[C++] Jak pociąć stringa na osobne literki?

Witam. Mam do napisania prosty programik związny z szyfrem cezara. Jak mam zrobić, by jeśli wpiszę słowo “krowa” jako char program osobno na przykład wypisał:

k

r

o

w

a

z Góry dzięki za pomoc

char napis[]=“krowa”;

int len=strlen(napis);

for(int i=0;i

Kurczę, dzięki, ale nadal jestem w kropce. Potrzebuję wprowadzić wyraz krowa z klawiatury więc w programie traktowac ją jako zmienną. Przy podmianie “krowy” na zmienną, powiedzmy wyraz gcc wyrzuca :

C:\~\Moje dokumenty\~\main.cpp|80|error: initializer fails to determine size of 'napis'|

||=== Build finished: 1 errors, 0 warnings ===|

Czyli przed kompilacją musi znać rozmiar tablicy?

Na logikę jeżeli wpisujesz ciąg podczas wykonywania programu to musisz obliczyć jego długość zaraz po zapisaniu do zmiennej.

Jako rozmiar tablicy spróbuj podać długość łańcucha wejściowego, w końcu zamieniasz go na tablicę? - Z tym, że może być różnica o 1 jednostkę (najczęściej liczy się od zera).

– WebNuLL

char napis[1024];

cin.getline(napis,1024);

int len=strlen(napis);

for(int i=0;i

Wielkie dzięki Alex. Mam jeszcze jedno równie głupie pytanie, które nie dotyczy jednak bezposrednio tematu.

Zrobiłem takie “ui”.

char input;

        cout << "Chcesz odszyfrować (o) czy zaszyfrować (z) tekst? (o/z) ";

        cin >> input;


        if(input=='z') {

                szyfrowanie();

        }

        if(input=='o') {

                odszyfrowanie();

        }

        if(input!='o' and input!='z'){

        cout << "Błąd";

        }

No i oczywiście gdzieś nie doczytałem i znów coś nie tak… Jeżeli wpiszuje cokolwiek oprócz o lub z wyskakuje błąd, czyli wszystko ok. Jesli wpiszę o lub z program kończy działanie… Funkcje na pewno działają, przynajmniej jeśli nei wsadzam ich do if’a.

Jutro przychodzi mi zamówiona wcześniej symfonia, obiecuję nie spamowac już po forum takimi głupotami. Dzięki za pomoc.

if(input==‘z’) szyfrowanie();

else if(input==‘o’) odszyfrowanie();

else cout<<“Błąd”;

cin.sync();

cin.get();