Funkcja strlen() nie liczy spacji, tablice

0

Witam,
mam pytanie. Funkcja Strlen() liczy znaki, ale jak pojawi sie spacja to nie liczy dalej np. zdanie "woda jest dobra" wyświetla 4, wie ktoś jak zrobić aby liczyło wszystkie ? I czy da się zamienić ostatni znak pierwszym przedostatni drugim itd. i porównać czy tablica jest symetryczna ( np. uzytkownik wprowadza 12 21 - po odwróceniu jest 12 21 czyli to samo) ?

Z góry dziękuję za pomoc.

3

strlen() liczy spacje bardzo dobrze, to cin>>napis wczytuje ci słowo a nie cały wiersz.

0

używam funkcji scanf("%s",tab);

1

scanf("%s" - też wczytuje słowo.

1

Zrób tak:

std::getline(std::cin, napis);
0

char tab[1000];
scanf("%999[^\n]", tab);
printf("%i\n",strlen(tab));
system("pause");

mam tak i dziala dzieki : ). co oznacz ten zapis "%999[^\n]" ?

i czy jak mam tablice 1000 znakow, ale chciałbym zrobić odbicie (pierwszy element zamienić z ostatnim, drugi z przedostatnim idt ) tylko tej części która jest zapełniona to muszę zrobić nową tablice o ilości znaków tyle ile użytkownik wprowadził ? i jest jakas funkjca czy musze pisać np ( tab[1]=tab2[20], tab[2]=tab2[19])

0

Dzięki : ), można zamknąć.

1 użytkowników online, w tym zalogowanych: 0, gości: 1