首页 > 代码库 > strlen与sizeof区别
strlen与sizeof区别
1.
strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个‘\0‘,如果你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到‘\0‘停止。
char aa[10];cout<<strlen(aa)<<endl; //结果是不定的
char aa[10]={‘\0‘}; cout<<strlen(aa)<<endl; //结果为0
char aa[10]="jun"; cout<<strlen(aa)<<endl; //结果为3
char aa[5]="hello";cout<<strlen(aa)<<endl; //结果5
2.
sizeof()返回的是变量声明后所占的内存数,不是实际长度,
sizeof(aa) 返回10
int a[10]; sizeof(a) 返回40 (根据语言int型 c 是两个字节 c++是四个 java 是两个)
3.
sizeof是一个操作符,strlen是函数。
strlen与sizeof区别
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。