解释:cin输入后的回车还在键盘缓冲区里的;而gets()是从标准输入设备(键盘)读取字符串
直到换行符(回车)结束,但换行符会被丢弃,然后在末尾添加‘\0’字符。这个程序while循环第一次执行时gets()先读到了上次cin残留下的回车,直接结束了所以可以通过使用fflush(stdin);//清空输入缓冲区来解决什么都不填,把横线删除就可以了。for的()中的3个表达式都可以省略,但分号不能省略。这里循环体len++;和()中的前两个表达式已经构成了完整的测字符串长度
功能,所以横线上没有必要填了。#include<stdioh>int strl(char s) //你需要的函数
。
{
int i,k=0;
for(i=0;s[i];i++)k++;
return k;
}
void main() //主函数,目的是测试下前面的函数。
{ printf("%d\n",strl("abcd"));
}
使用string库函数里的strlen函数即可判断字符长度。
strlen函数可以计算给定字符串的长度,返回值为长度值。
例如计算字符串“helloworld2017”的长度的代码:
#include<stdioh>
#include<stringh>
int main()
{
int i;
i = strlen("helloworld2017");
printf("%d",i);
}运行结果如下:
评论列表(0条)