Witam mam problem odnośnie polskich znaków w język C++. Oglądałem odc 15 na kanale Pasja Informatyki , zrobiłem wszystko tak jak było na tym filmie ale nie działa to w moim dość rozbudowanym programie. Wszystko na pewno jest wszystko poprawnie w kodzie bo, ściągnąłem paczkę plików z strony Pana Zelenta. Ma ktoś jakiś pomysł jak temu zaradzić ?
Kod użyty do działania polskich znaków :
#include <cstring>
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;
}
Dodam jeszcze, że w innych plikach mniej rozbudowanych to działa. Czy winą jest zbyt wielka ilość zmiennych typu string ? Prosiłbym o jakieś konstruktywne odpowiedzi.