sizeof函数怎么用
3个回答
展开全部
1.sizeof函数定义:
sizeof是何方神圣sizeof乃C/C++中的一个操作符(operator)是也,简单的说其作用就是返回一个对象或者类型所占的内存字节数。
2.sizeof函数
语法:
sizeof有三种语法形式,如下:
1) sizeof( object ); // sizeof( 对象 );
2) sizeof(type_name ); // sizeof( 类型 );
3) sizeof object; // sizeof 对象;
所以,
inti;
sizeof( i ); // ok
sizeof i; // ok
sizeof( int ); // ok
sizeof
int; // error
实际上,sizeof计算对象的大小也是转换成对对象类型的计算,也就是说,同种类型的不同对象其sizeof值都是一致的。这里,对象可以进一步延伸至表达式,即sizeof可以对一个表达式求值,编译器根据表达式的最终结果类型来确定大小,一般不会对表达式进行计算。如:
sizeof( 2 );// 2的类型为int,所以等价于 sizeof( int ); sizeof( 2 + 3.14 ); //3.14的类型为double,2也会被提升成double类型,所以等价于 sizeof( double);
sizeof也可以对一个函数调用求值,其结果是函数返回类型的大小,函数并不会被调用。
sizeof是何方神圣sizeof乃C/C++中的一个操作符(operator)是也,简单的说其作用就是返回一个对象或者类型所占的内存字节数。
2.sizeof函数
语法:
sizeof有三种语法形式,如下:
1) sizeof( object ); // sizeof( 对象 );
2) sizeof(type_name ); // sizeof( 类型 );
3) sizeof object; // sizeof 对象;
所以,
inti;
sizeof( i ); // ok
sizeof i; // ok
sizeof( int ); // ok
sizeof
int; // error
实际上,sizeof计算对象的大小也是转换成对对象类型的计算,也就是说,同种类型的不同对象其sizeof值都是一致的。这里,对象可以进一步延伸至表达式,即sizeof可以对一个表达式求值,编译器根据表达式的最终结果类型来确定大小,一般不会对表达式进行计算。如:
sizeof( 2 );// 2的类型为int,所以等价于 sizeof( int ); sizeof( 2 + 3.14 ); //3.14的类型为double,2也会被提升成double类型,所以等价于 sizeof( double);
sizeof也可以对一个函数调用求值,其结果是函数返回类型的大小,函数并不会被调用。
展开全部
sizeof其实不是个函数,它是个宏定义。写法为size_t sizeof(各种类型) 其中sizeof_t 就是int或者long。用于返回该类型的占用大小。需要注意的是如果对一个指针类型使用sizeof的时候,任何类型的指针返回的都是相同的长度,因为指针事实上相当于内存地址,所以返回的仅仅是内存地址的长度。
更多追问追答
追问
比如要申请5个a大小的空间,a=2.怎么申请
?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sizeof( type_name )
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询