谁能告诉我为什么这段代码会崩溃?很简单,如果字符串的长度> 16,再请求一个字符串。如果我在 if 语句中写 control = 1 它可以工作,但是没有它它应该可以工作,因为此时 control 的值是 1,对吗?比(我正在学习)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int
main(void)
{
int control = 1;
char word[16] ;
printf("Enter a word: ");
while(control == 1)
{
scanf("%s", word);
int len = strlen(word);
printf("Lenght is: %d\n", len);
if (len >= 16)
{
printf("Word lenght to long, enter a new one: ");
}
else
{
control = 0;
}
}
printf("This is the word: %s\n", word );
}