0
我想使用scanf將數據放在數組中,如下面的int值。在c編程中使用循環和scanf的字符串數組
int main(){
int size=5;
int marks[size];
int x;
for(x=0; x<size; x++){
scanf("%d", &marks[x]);
}
for(x=0; x<size; x++){
printf("The Element at %d is %d\n", x, marks[x]);
}
getch();
return 0;
}
上面的代碼是罰款和工作,但我想用同樣的處理字符串數組像下面的例子,但它不工作。
int main(){
int size=5;
char *name[size];
int x;
for(x=0; x<size; x++){
scanf("%s", name[x]);
}
for(x=0; x<size; x++){
printf("The Element at %s is %s\n", x, name[x]);
}
getch();
return 0;
}
'char * name [size];'顯然不是你想象的那麼......'char *'是一個指向字符串的指針,但是你必須先讓它指向一些分配的內存,然後才能將其用於scanf。 scanf不會爲您分配內存。 –