C++/C 里的sizeof(),size(),strlen()

1.对于char

char * s="12345"

sizeof(s)是指针占用的空间,即4位

sizeof(*s)是第一个char字符的占用空间,即1位

 

char s[]="12345"

sizeof(s)是数组从第0位计算到末尾+1,因为末尾会有‘\0’,即5+1=6位

sizeof(*s)是第一个char字符的占用空间,即1位

 

char s[50]="12345"

sizeof(s)是内存分配的大小,即50位

strlen(s)是元素个数,即5

 

2.对于string

在C++里,size()和length()是一样,计算元素个数。

 

你可能感兴趣的:(关于C语言的一些东西,研一)