我有如下代码:
void main(int argc, char **argv)
{
int loggedIn=0;
char *currentCommand;
while (!loggedIn)
{
printf("Enter your command:");
scanf("%s",currentCommand);
printf("\n%s\n",currentCommand);
}
}
问题是
scanf()
第一次运行良好,然后开始读取(null)
,输出将是一个无限循环的Enter your command: (null)
。我希望输入更多命令,并在更改loggedIn值时停止,但一旦我输入一个命令,它就会无休止地打印Enter your command: (null)
。
currentCommand
分配任何空间。 - 001