Ingen anvnder funktionen
gets(). Den r i princip vrdels eftersom den r s farlig. Den fortstter att lsa in till ditt utrymme ven efter att det tar slut, och kraschar, eller nnu vrre skriver ver andra variabler och ger programmet konstigt beteende och/eller ett riktigt fett skerhetshl.
Anvnd
fgets() med en array och en maxlngd p raden, eller hantera minnet sjlv med malloc() och realloc(). Det senare r en bttre lsning men antagligen ver-ver-kurs om du precis har brjat med C.
En C-strng r en radda med chars (i en array eller dynamiskt allokerat minne) som avslutas med NUL-tecknet '\0', som har heltalsvrdet 0. Chars r egentligen bara sm heltal som man lagrar teckenvrden i.
Fr den hr uppgiften behver du inte ens
lagra texten du lser in. Det rcker med att lsa ett tecken i taget med
getchar() och
rkna dem. Du behver bara en summa-variabel.