Witam!
Mam problem, dotyczący wyświetlania znaków polskich w terminalu C++.
Kod z którego korzystam wydaje się być poprawny:
#include <iostream>
#include <string.h>
using namespace std;
char *tr(char *str)
{
static char buff[256];
char cp[]="\245\206\251\210\344\242\230\276\253\244\217\250\235\343\340\227\275\215ąćęłńóśżźĄĆĘŁŃÓŚŻŹ";
if(strlen(str)>=sizeof(buff)) return str;
char *bf=buff;
while(*str)
{
char *pos=strchr(cp+18,*str);
*(bf++)=pos?*(pos-18):*str;
++str;
}
*bf=0;
return buff;
}
int main ()
{
cout<<tr("ąćęłńóśżźĄĆĘŁŃÓŚŻŹ")<<endl;
return 0;
}
jednak wynik końcowy nie jest zadowalający:
Próbowałam używać innych bibliotek, takich jak <cstring>, oraz innych metod (setlocale(LC_ALL, "");) jednak efektów nie ma.
Używam Visual Studio Code na Windows 10