Skocz do zawartości


Zdjęcie

C polskie znaki


  • Zaloguj się, aby dodać odpowiedź
5 odpowiedzi w tym temacie

#1 lightinside

lightinside

    Początkujący

  • 44 postów

Napisano 02 12 2012 - 22:23

Czy można jakoś włączyć polskie znaki? w programach konsolowych ala dos z c??



  • 0

#2 MarcoMarc

MarcoMarc

    Początkujący

  • 109 postów

Napisano 03 12 2012 - 13:54

Tak tylko musisz ustawić formatowanie danych wyjściowych.
Stringi muszą mieć format Windows-1250, (CP1250)

  • 0

#3 lightinside

lightinside

    Początkujący

  • 44 postów

Napisano 06 12 2012 - 12:37

a gdzie mogę to ustawić? czy jak np napiszę printf("coś tam");to też Twoja metoda zadziała?
  • 0

#4 MarcoMarc

MarcoMarc

    Początkujący

  • 109 postów

Napisano 06 12 2012 - 16:19

Jeśli programujesz w C++ poczytaj o WCHAR
  • 0

#5 lightinside

lightinside

    Początkujący

  • 44 postów

Napisano 31 12 2012 - 14:13

a jeśli mi chodzi o c?? a nie c++??
  • 0

#6 MarcoMarc

MarcoMarc

    Początkujący

  • 109 postów

Napisano 15 01 2013 - 23:20

Możesz użyć własnej funkcji, chwila szukania w necie i masz:

Autorstwo [alex] dobreprogramy.pl
#include <iostream>
using namespace std;
char *tr(char *str) // Konwersja z win1250 na cp852
{
static char buff[256]; // można odpowiednio zwiekszyć
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("zażółc gęślą jaźń ZAŻÓŁĆ GĘŚLĄ JAŹŃ")<<endl;
cin.get();
return 0;
}


Użytkownik MarcoMarc edytował ten post 25 01 2013 - 15:28

  • 0

Podobne tematy

Nie znalazłem podobnego tematu - chcę założyć nowy wątek i uzyskać szybką pomoc!
Zobacz więcej tematów z tagiem: polskie znaki język C



Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych