char szTest[] = "Test string length";
std::string strTest = "Test string length";
// sizeof 的作用为返回对象在内存中所占空间真实大小
int nSzSize = sizeof(szTest); // 19,包含空字符,即18+1
int nlen = strlen(szTest); // 18,传入strlen的指针必须指向以空字符结尾的数组
int nStrSize = sizeof(std::string); // 28,与编译器有关,且在sizeof(func)内的func函数不会被调用执行,返回的值为func()的返回值类型
int nStrSize2 = sizeof strTest; // 28,变量或对象支持不加括号,类型不支持。
int nStrLen = strTest.length(); // 18,与size没有区别,只是一个代表是字符串类型,一个代表string是一个容器
int n = strTest.size(); // 18
return 0;
sizeof、strlen、length() 区别于联系
猜你喜欢
转载自blog.csdn.net/Lasuerte/article/details/82348496
今日推荐
周排行