sizeof()
函数写法
注意:以后要写成sizeof(int)
、 sizeof(g)
sizeof有两种用法:
(1)sizeof(object)
也就是对对象使用sizeof
,也可以写成sizeof object
的形式。
(2)sizeof(typename)
也就是对类型使用sizeof
,注意这种情况下写成sizeof typename
是非法的。
int i = 2;
cout << sizeof(i) << endl; // sizeof(object)的用法,合理
cout << sizeof i << endl; // sizeof object的用法,合理
cout << sizeof 2 << endl; // 2被解析成int类型的object, sizeof object的用法,合理
cout << sizeof(2) << endl; // 2被解析成int类型的object, sizeof(object)的用法,合理
cout << sizeof(int) << endl; // sizeof(typename)的用法,合理
cout << sizeof int << endl; // 错误!对于操作符,一定要加()
数组的大小就是他在编译时被分配的空间,也就是各维数的乘积*数组元素的大小
char g[5][5];
sizeof g / sizeof(char) = 25
所以计算字符数组中的字符串长度时,用 strlen(g[i])
函数
strlen()
计算字符数组的字符数,以'\0'
为结束判断,不计算为'\0'
的数组元素。
而sizeof()
计算数据(包括数组、变量、类型、结构体等)所占所有合法内存空间,用字节数表示。
int puts( const char *str );
puts()输出每个来自在空终止字符之前的字符串 str 的字符并附加换行符 \n 到输出