标签:
int b=strlen("\0b"); int a=sizeof("\0b");
输出b=0;a=3; a为计算的该字符串所占的空间大小;
char a[10]; char *b=new char[10]; int x=sizeof(a); //x=10; int y=sizeof(b); //y=4; int z=sizeof(*b); //z=1;
x计算的是数组所占的空间大小;
y计算的是字符指针b所占的空间大小,32位机中所有的指针变量所占的空间大小为4个字节;
z计算的是指针b所指向的第一个字符所占的空间大小,char型空间为1个字节;
char a[10]; char *b=new char[10]; int x=strlen(a); //随机数 int y=strlen(b); //随机数
strcpy(b,"hello");
int z=strlen(b); //z=5;
struct S1{ int a; char b; };//4+1+3=8 struct s2{ char c; S1 s; char d; };//1+3+4+1+1+2=12,12是int型空间的整数倍
标签:
原文地址:http://www.cnblogs.com/beaglebone/p/5726588.html