3

我想要一个无限循环,每个循环都获取命令,

这是我的代码

while ( 1 )
{
    char * command[100];
    printf("---| ");
    scanf( "%[^\n]",command);
    printf("%s\n",command);

}

由于某种原因,它只输入一次,并且循环不会因询问输入而终止。

我在这里做错了什么?

4

1 回答 1

2

定义应该是

字符命令[100];

而不是 char *command[100] - 这是一个由 100 个字符指针组成的数组。

scanf() 也不容易使用,我会使用fgets(command, sizeof(command), stdin); 然后删除换行符。

while ( 1 )
{
    char command[100];
    printf("---| ");
    scanf( "%s", command);
    printf("%s\n",command);
}
于 2013-03-02T16:58:58.443 回答