【发布时间】:2020-10-22 22:09:38
【问题描述】:
在我的代码输出中,我发现我正在打印的字符串都是(null),即使我输入了count字符串
char name[31];
char *names[32];
int count = 5;
for (int i =0; i<count;i++) {
scanf("%s",name);
names[i]=(char*)malloc(strlen(name)+1);
strcpy(names[i],name);
}
for (int i =0; i<count;i++) {
printf("%d: %s\n",i+1,names[count]);
}
【问题讨论】:
-
可能是错字,但
printf("%d: %s\n",i+1,names[count]);应该是printf("%d: %s\n",i+1,names[i]);- 否则,您将打印一个未分配的字符串。