ユーザーからの入力として最大 30 文字の文字列を取得し、行末が含まれているかどうかを確認したいと考えています。
これは私がこれまでに書いてみたことです:
int main(void) {
int i;
char* command = (char*)calloc(31, sizeof(char));
while (0 < 1) {
scanf("%s", command);
for (i = 0; i <= strlen(command); ++i) {
if (command[i] == '\n')
printf("here");
}
if (strcmp(command, "quit") == 0)
break;
}
アイデアは、ユーザーが入力として指定したコマンドが「合法」であるかどうかを確認することです。つまり、長さは 31 未満です。このコードを実行すると、入力の長さに関係なく「ここ」が出力されません。