string,char,char*,char a[] 占字节数, 以及sizeof,strlen(),str.length()的用法
2012-09-22 20:21
459 查看
// studystring.cpp : // #include "stdafx.h" #include <iostream> #include <string> using namespace std; int main(int argc, char* argv[]) { cout<<"char,char*,string 在C++中的占几个字节: -------------------------"<<endl; cout<<"sizeof(char) = "<<sizeof(char)<<endl; //=1 cout<<"sizeof(char*) = "<<sizeof(char*)<<endl; //=4 cout<<"sizeof(string) = "<<sizeof(string)<<endl; //=16 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; string str; str = "12345678912"; // 11个字符 cout<<"the size of str = "<<sizeof(str)<<endl; // = 16 cout<<"the length of str = "<<str.length()<<endl;// = 11 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; //-- char* ch = "12345678912"; // 11个字符 cout<<"the size of ch = "<<sizeof(ch)<<endl; // = 4 cout<<"the length of ch = "<<strlen(ch)<<endl;// = 11 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; //-- char a[]="12345678912"; // 11个字符 cout<<"the size of a = "<<sizeof(a)<<endl; // = 12,包括了字符串结束符'\0' cout<<"the length of a = "<<strlen(a)<<endl; //=11 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; //-- char chr[12]="12345678912"; // 11个字符 char chr[11]="12345678912"; 编译报错 array bounds overflow cout<<"the size of chr = "<<sizeof(chr)<<endl; // =12 cout<<"the length of chr = "<<strlen(chr)<<endl; // =11 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; //-- char chrr[100]="12345678912"; // 11个字符 cout<<"the size of chrr = "<<sizeof(chrr)<<endl; // =100 cout<<"the length of chrr = "<<strlen(chrr)<<endl; // =11 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; //-- char strr[8]={'a'}; cout<<"the size of strr = "<<sizeof(strr)<<endl; // =8 cout<<"the length of strr = "<<strlen(strr)<<endl; // =1 cout<<"----------------------------------------------------------------"<<endl; cout<<endl;cout<<endl; return 0; }
相关文章推荐
- string,char,char*,char a[] 占字节数, 以及sizeof,strlen(),str.length()的用法
- sizeof strlen string.lenth()之例子 string,char,char*,char a[], sizeof,strlen(),str.length()...
- string,char,char*,char a[], sizeof,strlen(),str.length()...
- char字符串数组与string之间的转换,以及sizeof,strlen,length的区别
- char *s和char s[]的区别与联系以及strlen()和sizeof()的用法
- 由strcat函数引发的对char *a和char a[]以及sizeof和strlen
- 由strcat函数引发的对char *a和char a[]以及sizeof和strlen
- strlen(char *)和str.length()以及str.size()的区别
- Java String,int,Integer,char 类型转换 ,sizeof,strlen,length的区别 .
- char*,char a[ ],char*a[]学习、sizeof、位与字节
- char字符串数组与string之间的转换,以及sizeof,strlen,length的区别
- C++ 数组与字符串长度sizeof()、strlen()、string的length()和size()
- strlen 和 length 以及 sizeof()区别异同
- sizeof() 、strlen()、str.length的区分
- strlen和sizeof的区别,以及extern的用法
- 字节对齐以及sizeof(),strlen()
- C/C++中求字符串数组的大小---sizeof,strlen,string,length()
- string和char*互转以及c_str()的陷阱
- 数组与字符串长度sizeof()、strlen()、string的length()和size()
- c语言库函数【string.h】之strlen_(const char * str)