2个回答
展开全部
strlen只能用char*做参数,且必须是以''\0''结尾的。
char str[20]="0123456789";
int a=strlen(str); //a=10; >>>> strlen 计算字符串的长度,以结束符 0x00 为字符串结束。
要注意的是:
strlen实际上是,从参数表示的地址往后找,找到第一个'\0',即串尾。然后计算'\0'至首地址的“距离”,即隔了几个字符,从而得出长度。
char str[20]="0123456789";
int a=strlen(str); //a=10; >>>> strlen 计算字符串的长度,以结束符 0x00 为字符串结束。
要注意的是:
strlen实际上是,从参数表示的地址往后找,找到第一个'\0',即串尾。然后计算'\0'至首地址的“距离”,即隔了几个字符,从而得出长度。
追问
哦,原来是这样,谢谢。
不过你这个是定义的时候直接赋值的,我是想通过函数运行后再通过键盘输入的。请问如何能自由输入,输入后再确定字符串长度呢?
追答
#include
#include
using namespace std;
void main(){
char a[100];
cin>>a;
int len=strlen(a);
cout<<len<<endl;}
2015-03-15
展开全部
int main() { 下面,int num前面 加一句
typedef char string [80];
因为你在用的根本不是C++标准库的string类型
typedef char string [80];
因为你在用的根本不是C++标准库的string类型
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询