Pokaż wyniki 1 do 6 z 6

Temat: Sposób na polskie znaki w konsoli windows

  1. #1
    Avatar rafal44
    rafal44 jest offline logout
    Zarejestrowany
    Dec 2007
    Postów
    291

    Domyślnie Sposób na polskie znaki w konsoli windows

    Macie problemy z polskimi znaczkami w windowsie? Zamiast ą, Ą, ł wyświetlają się dziwne znaczki? Oto odpowiednia funcja o patriotycznej nazwie zmieniająca tablicę tak aby widoczne były polskie znaki:
    Kod:
    void poland(char* tablica)
    {
        int ascii[18]={-71,-91,-13,-45,-77,-93,-100,-116,-26,-58,-97,-113,-65,-81,-15,-47,-22,-54};
        char pol[18]={165,164,162,224,136,157,152,151,134,143,171,141,190,189,228,227,169,168};
        int a=strlen(tablica);
        for(int b=0;b<a;b+=1)
        {
            for(int d=0;d<18;d+=1) if(tablica[b]==ascii[d])
            {
                tablica[b]=pol[d];
                break;
            }
        }
    }
    Używać przed wyświetleniem.
    "a imię jego będzie czterdzieści i cztery"
    A. Mickiewicz Dziady cz. III

  2. #2
    szmitek jest offline Kamil Szmit
    Zarejestrowany
    Oct 2008
    Skąd
    Chotomów
    Postów
    6

    Question

    Co użyć jako argument "tablica" funkcji "poland"?

    Np.:

    Kod:
    int main(void)
    {
        poland(/*Co w tym miejscu ma być, żeby puts poprawnie wyświetliło polskie znaki?*/);
        puts("\nProgram służy do dodawania, odejmowania, mnożenia i dzielenia dwóch liczb"); //opis programu
        return 0;
    }
    Ostatnio edytowane przez szmitek : 10-28-2008 - 23:29

  3. #3
    rip
    rip jest offline Banned
    Zarejestrowany
    May 2008
    Postów
    534

    Domyślnie

    a nie prosciej zmienic font konsoli?
    Ostatnio edytowane przez javaman : 10-29-2008 - 15:01

  4. #4
    Avatar kaspsior
    kaspsior jest offline يحشطخبؤءفنو٢٥٣كهي
    Zarejestrowany
    May 2007
    Postów
    406

    Domyślnie

    ..................... ...
    Ostatnio edytowane przez kaspsior : 04-17-2012 - 23:47

  5. #5
    rip
    rip jest offline Banned
    Zarejestrowany
    May 2008
    Postów
    534

    Domyślnie

    to chyba to samo nie?

  6. #6
    Avatar rafal44
    rafal44 jest offline logout
    Zarejestrowany
    Dec 2007
    Postów
    291

    Domyślnie

    Można tak:
    Kod:
    char* poland(char* tablica)
    {
        int ascii[18]={-71,-91,-13,-45,-77,-93,-100,-116,-26,-58,-97,-113,-65,-81,-15,-47,-22,-54};
        char pol[18]={165,164,162,224,136,157,152,151,134,143,171,141,190,189,228,227,169,168};
        int a=strlen(tablica);
        if(a>1024) a=1024;
        static char wynik[1024];
        strncpy(wynik,tablica,1024);
        for(int b=0;b<a;b+=1)
        {
            for(int d=0;d<18;d+=1) if(wynik[b]==ascii[d])
            {
                wynik[b]=pol[d];
                break;
            }
        }
        return wynik;
    }użycie
    
    //u
    char napis[]="żźćęąś";
    printf("%s\n",poland(napis));
    Ta funkcja nie zmienia tablicy źródłowej.
    "a imię jego będzie czterdzieści i cztery"
    A. Mickiewicz Dziady cz. III

Podobne wątki

  1. Znaki HTML
    By Ren-Ar in forum Newbie - dla początkujących!
    Odpowiedzi: 5
    Autor: 06-16-2008, 22:43
  2. Sposób na gmail
    By mefistoon in forum Hacking
    Odpowiedzi: 8
    Autor: 07-14-2007, 14:59
  3. Znaki specjalne.
    By RedBull in forum Newbie - dla początkujących!
    Odpowiedzi: 6
    Autor: 07-12-2007, 22:15
  4. [php/mysql] polskie znaki przy zapisie do bazy danych!
    By eMCe in forum PHP/CGI/ASP/JSP/J2EE
    Odpowiedzi: 6
    Autor: 05-07-2007, 18:39

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj