3

ループごとにコマンドを取得する無限ループが必要です。

これが私のコードです

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

}

何らかの理由で、入力は1回だけで、ループは入力を求めても終了しません。

私はここで何を間違えましたか?

4

1 に答える 1

2

定義は次のようになります

charコマンド[100];

そして、char *command[100]ではありません-これは100文字のポインタの配列です。

fgets(command, sizeof(command), stdin); また、scanf()は使いにくいので、改行を使用して削除します。

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