Ho appena iniziato con C e stavo provando alcuni esempi dal libro di Ritchie. Ho scritto un piccolo programma per capire array di caratteri, ma sono imbattuto in alcuni errori, e speravo in una certa comprensione su quello che ho capito male:C principiante di programmazione - Si prega di spiegare questo errore
#include <stdio.h>
#define ARRAYSIZE 50
#include <string.h>
main() {
int c,i;
char letter[ARRAYSIZE];
i=0;
while ((c=getchar()) != EOF)
{
letter[i]=c;
i++;
}
letter[i]='\0';
printf("You entered %d characters\n",i);
printf("The word is ");
printf("%s\n",letter);
printf("The length of string is %d",strlen(letter));
printf("Splitting the string into chars..\n");
int j=0;
for (j=0;j++;(j<=strlen(letter)))
printf("The letter is %d\n",letter[j]);
}
L'output è:
$ ./a.out
hello how are youYou entered 17 characters
The word is hello how are you
The length of string is 17Splitting the string into chars..
Che cosa è succedendo? Perché il ciclo for non fornisce alcun output?
+1 per raccomandare il controllo associato all'array –
Grazie anche per questo suggerimento. Aggiungerò presto i controlli degli errori. Ho pensato di cancellare le basi. Guarda come ho sbagliato anche nella sintassi di! :) – Droidzone