c++中获取字符串长度的函数用法和区别

365最近提款系统维护了吗 2026-11-02 01:19:23 admin

学了这么长时间c++,一直没怎么搞清楚获取字符串长度的函数到底该怎么用,今天实在受不了这种你那个模糊的感觉,所以趁热打铁来总结。

主要对sizeof(), strlen(), str.length(), str.size()函数做总结:

1. sizeof()

获取所占空间的字节数

#include using namespace std;

int main(){ char a[] = {'a','b','c'}; int len = sizeof(a); cout<

输出:3

#include using namespace std;

int main(){ int a[] = {1,2,3}; int len = sizeof(a); cout<

输出:12

2. strlen(char *s)

s是指定字符串,返回该字符串的长度,不包括结束符'/0',需包含#include

#include #include using namespace std;

int main(){ char *a = "abc"; char b[10] = "defg";

int len1 = strlen(a); int len2 = strlen(b); int len3 = sizeof(b);

cout<<"len1="<

如果声明char[6] = "abcdef"会报错,因为数组大小为6,应当留出最后一个位置用来存'/0'.

3.str.length()和str.size()

两个函数的用法和效果是一样的,都用来求string字符串的长度

#include #include using namespace std;

int main(){ string s = "asd"; int len1 = s.size(); int len2 = s.length(); cout<

输出:3

3

总结:求空间大小 ---sizeof()

求char字符串长度---strlen(char *)

求string字符串长度---s.size()和s.length()

相关文章

16+256和12+512,两种手机版本怎么选?

AsiaFM 亚洲粤语台

【原】FBI测试:谁才是小孩的亲妈?