昨天在A题目时,调试时发现 如下代码竟然输出不停,我输入了一个字符后,终端就一直输出,最终我调试找到了原因,我监控i时,发现 i 会变成一个超级庞大的数,后来才发现strlen函数得到的是一个unsigned int 类型的数,没有负数,当结果为负数时,自然显示的是类似于无穷大的数。
char s[105];
gets(s);
for(int i=1;i<=strlen(s)-2;i++)
cout<<i<<endl;
昨天在A题目时,调试时发现 如下代码竟然输出不停,我输入了一个字符后,终端就一直输出,最终我调试找到了原因,我监控i时,发现 i 会变成一个超级庞大的数,后来才发现strlen函数得到的是一个unsigned int 类型的数,没有负数,当结果为负数时,自然显示的是类似于无穷大的数。
char s[105];
gets(s);
for(int i=1;i<=strlen(s)-2;i++)
cout<<i<<endl;