C语言中sizeof的用法.docx
《C语言中sizeof的用法.docx》由会员分享,可在线阅读,更多相关《C语言中sizeof的用法.docx(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言中sizeof的用法sizeof是C/C+中的一个操作符(operator),作用就是返回一个对象或者类型所占的内存字节数。返回值类型为size_t,在头文件stddef.h中定义这是一个依赖于编译系统的值,一般定义为typedefunsignedintsize_t;编译器林林总总,但作为一个规范,都会保证char、signedchar和unsignedchar的sizeof值为1,毕竟char是编程能用的最小数据类型。MSDN上的解释为:Thesizeofkeywordgivestheamountofstorage,inbytes,associatedwithavariableorat
2、ype(includingaggregatetypes).Thiskeywordreturnsavalueoftypesize_t.2.语法:sizeof有三种语法形式,如下:1)sizeof(object);/sizeof(对象);2)sizeof(type_name);/sizeof(类型);3)sizeofobject;/sizeof对象;所以一下三种sizeof的使用都是对的复制代码代码如下:#includemain()intb;printf(%dn,sizeofb);printf(%dn,sizeof(b);printf(%dn,sizeof(int);4.基本数据类型的sizeof
3、这里的基本数据类型指short、int、long、float、double这样的简单内置数据类型,由于它们都是和系统相关的,所以在不同的系统下取值可能不同,这务必引起我们的注意,尽量不要在这方面给自己程序的移植造成麻烦。一般的,在32位编译环境中,sizeof(int)的取值为4.5.指针变量的sizeof等于计算机内部地址总线的宽度。所以在32位计算机中,一个指针变量的返回值必定是4(注意结果是以字节为单位),可以预计,在将来的64位系统中指针变量的sizeof结果为8.指针变量的sizeof值与指针所指的对象没有任何关系,正是由于所有的指针变量所占内存大小相等,所以MFC消息处理函数使用两
4、个参数WPARAM、LPARAM就能传递各种复杂的消息结构(使用指向结构体的指针)。6.数组的sizeof数组的sizeof值等于数组所占用的内存字节数,如:chara1=abc;inta23;sizeof(a1);/结果为4,字符末尾还存在一个NULL终止符sizeof(a2);/结果为3*4=12(依赖于int)sizeof当作了求数组元素的个数是不对的,求数组元素的个数有下面两种写法:intc1=sizeof(a1)/sizeof(char);/总长度/单个元素的长度intc2=sizeof(a1)/sizeof(a10);/总长度/第一个元素的长度.注意数组名做函数参数传递时退化为指针
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 sizeof 用法
限制150内