C++---sizeof与strlen的区别

sizeof()是一个操作符,不是函数调用,结果为无符号整数,可把它看作无符号整形表达式,输出单位为byte。

常见数据类型所占内存空间(单位:byte)

五种基本整形

                     64位操作系统下                      32位操作系统下

char                        1                                            1

short                       2                                            2

int                           4                                            4

long                        8                                            4

long long                8                                            8

指针                         8                                            4

strlen()用来计算字符串内字符的个数,以“\0”结尾。

char c[]="hello!";

cout<<sizeof(c)<<endl;    //此处结果为7,因为结尾处“\0”占有一个字节。

cout<<strlen(c)<<endl;   //此处结果为6,因为字符串以“\0”结尾,结果不包含“\0”

猜你喜欢

转载自blog.csdn.net/qq_40951833/article/details/80727337