Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Zmiana małych na duże litery. C++

DeDeZabrzE 18 Paź 2010 21:39 3524 2
  • #1 18 Paź 2010 21:39
    DeDeZabrzE
    Poziom 9  

    Witam, mam duży problem, potrzebuje wykonac operacje na pliku txt, która zmieni wszystkie małe litery na duże. W pliku znajduje sie krótkie opowiadanie o "Jasiu".
    Chciałem korzystać z funkcji tolower(),toupper(), ale niewiem jak sie za to zabrać.

    Mam taki kawałek kodu, niewiem co robie z nim źle. Wie ktoś może?

    Code:
    cout<<"Z malych na duze\n";
    
                    ifstream fin(fileName);     
                    string c;
        string fileName3;
        fileName3=fileName;
       
       
        if(c>=65 && c<=90)
        {
                        fileName3=tolower(c);
                         }else
                         fileName3=toupper(c);
                         cout<<fileName3;
                         cout<<c;
                                 }
                    cin.get();

    0 2
  • #2 18 Paź 2010 22:34
    Jarek68
    Poziom 20  

    Witam. Program bezpłatny OpenOffice.org. Otwierasz zaznaczasz tekst klikasz prawym przyciskiem myszy z menu kontekstowego wybierasz wielkie i małe litery wybierasz podmenu wielkie litery i po sprawie :-)

    Moderowany przez arnoldziq:

    Za tę niezwykle "cenną" i "pomocną" poradę, nagradzam kolegę Ostrzeżeniem #2

    0
  • #3 19 Paź 2010 07:24
    Terminator
    Poziom 23  

    Co za porada ;] odpalić OpenOffice ... hmmm

    Kod kompletnie niezrozumiały, jakiś wycinek i tyle.
    Funkcja toupper przyjmuje jako parametr 'int' a nie 'string'. W ogóle to nawiasy się nie zgadzają. Może jednak podaj bardziej kompletny kod :)

    Code:
    #include <iostream>
    
    using namespace std;

    int main()
    {
        cout<<"Z malych na duze\n";
        FILE* plik;
        plik = fopen("d:\\test.txt","r");
        char buf;

        while( fread(&buf,sizeof(char),1,plik) == 1 )
            cout<<(char)toupper((int)buf);

        fclose(plik);
    }

    0