我想从用户那里获得最大长度为 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。当我运行此代码时,无论输入的长度如何,它都不会打印“here”。