私はCプログラミングが初めてです。簡単な入力を受け取るプログラムを作成しようとしています。ただし、入力文字列をユーザーが入力する「意味」と比較すると、最後に追加の文字があることがわかりました。これは '\0' か '\r' ではないかと思いましたが、そうではないようです。これは私のコードスニペットです:
char* getUserInput(char* command, char $MYPATH[])
{
printf("myshell$ ");
fgets(command, 200, stdin);
printf("%u\n", (unsigned)strlen(command));
if ((command[(unsigned)strlen(command) - 1] == '\0') || (command[(unsigned)strlen(command) - 1] == '\r'))
{
printf("bye\n");
}
return command;
}
コードは、入るときに「exit」と言うと、5文字が入力されたことを示しています。しかし、私はこの最後のものの正体を理解できないようです. 「さようなら」は印刷されません。この謎のキャラクターが何であるか知っている人はいますか?