当前位置: 首页 > news >正文

陕西省煤炭建设公司第一中学官方网站沪尚茗居装修价格怎样

陕西省煤炭建设公司第一中学官方网站,沪尚茗居装修价格怎样,网校网站建设多少钱,网站设计方案策划文章目录 前言一、不同编译器二、C51* 指针型 三、sizeof结构体联合体 前言 在C语言中#xff0c;数据类型指的是用于声明不同类型的变量或者函数的一个广泛的系统。变量的类型决定了变量存储占用的空间 一、不同编译器 类型16位编译器大小32位编译器大小64位编译器大小char… 文章目录 前言一、不同编译器二、C51* 指针型 三、sizeof结构体联合体 前言 在C语言中数据类型指的是用于声明不同类型的变量或者函数的一个广泛的系统。变量的类型决定了变量存储占用的空间 一、不同编译器 类型16位编译器大小32位编译器大小64位编译器大小char1个字节1个字节1个字节char*即指针变量2个字节4个字节32位的寻址空间是2^32,即32个bit也就是4个字节8个字节short int2个字节2个字节2个字节int2个字节4个字节4个字节unsigned int2个字节4个字节4个字节float4个字节4个字节4个字节double8个字节8个字节8个字节long4个字节4个字节8个字节long long8个字节8个字节8个字节unsigned long4个字节4个字节8个字节 在32位编译器下 sizeof(char):1 sizeof(short):2sizeof(int):4sizeof(long):4sizeof(float):4sizeof(double):8sizeof(long long):8sizeof(p):4,(p为指针)指针用来记录另一个对象的地址在32位计算机中一个指针变量的返回值必定是4。 指针变量的sizeof值与指针所指的对象没有任何关系。 二、C51 C51属于8位单片机 在单片机的C语言中我们默认的规则如下short int即为int,long int即为long,前面若无unsigned符号则一律认为是signed型。 * 指针型 指针型本身就是一个变量在这个变量中存放的指向另一个数据的地址。这个指针变量要占用一定的内存单元对不同的处理器其长度不一样在C51中它的长度一般为1~3个字节。 三、sizeof sizeof是C语言的一种单目操作符如C语言的其他操作符、–等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。 1.用于数据类型 使用形式sizeof(type) 数据类型必须使用括号括住 2.用于变量 使用形式sizeof(变量名) 或 sizeof 变量名变量名可以不用括号括住 sizeof 操作符不能用于函数类型不完全类型或位字段不完全类型指具有未知存储大小的数据类型如未知存储大小的数组类型、未知内容的结构或联合类型、void 类型等。 结构体 当没有定义 #pragma pack(value) 这种指定 value 字节进行对齐时结构体的 sizeof 涉及到字节对齐的问题一般满足三个准则 1结构体变量的首地址能够被其最大基本类型成员的大小所整除。 2结构体的每个成员相对于结构体首地址的偏移量都是成员大小的整数倍。 3结构体的总大小为结构体最大基本类型成员大小的整数倍。 字节对齐在 char 后会填充三个字节 空结构体会占一个字节的空间用于占位 typedef struct {char a[5];int b;double c; }Test;没有指定字节对齐。在结构体成员中a占5个字节b占4个字节c占8个字节。54817.但是17不是 8的倍数所以(53)(44)824.故占24个字节。当定义了 #pragma pack(value)以 value字节进行对齐时它的计算规则如下整体的大小必须为 value 的最小整数倍。 #pragma pack(4) typedef struct {char a[5];int b;double c; }Test;指定4字节对齐所以(53)4820。故占20个字节。#pragma pack(2) typedef struct {char a[5];int b;double c; }Test;如果指定2字节对齐那么就是(51)4818个字节。联合体 联合体各成员共享一个内存联合体的大小取决于他所有成员中占用空间最大的一个成员的大小。并且对于复合数据类型如unionstruct, class 的对齐方式为成员中最大成员的对齐方式。 union u //u的大小是其中最大的double类型成员a所以sizeof(u) sizeof(double) 8; {double a;int b; };union u1 // u1的大小是char[13] 类型的数组但由于另一个成员int b ,所以要以4对齐13以4对齐就是补3位到16 {char a[13];int b; };union u2 // u2的大小是char[13]类型的数组不需要补齐所以长度为13 {char a[13];char b; };
http://www.hkea.cn/news/14488695/

相关文章:

  • 深圳极速网站建设费用wordpress 块状
  • 大连建设厅网站网站建设的四大要素
  • app介绍网站模板免费下载画册设计网站
  • 七七网站建设企业邮箱怎么改密码
  • 石景山老山网站建设清远网站设计公司
  • 自己做的网站注册用户无法收到激活邮箱的邮件国家企业信用公示信息系统入口
  • 建网站需要哪些条件苏州妙笔网络科技有限公司
  • 石墨网站开发帝国cms做英文网站
  • 专门为98k做的网站杭州网站制作公司排名
  • 做网站的公司地址网站无法打开网页是怎么回事
  • 设计制作网站的公司有哪些做企业网站的
  • 鹤壁公司做网站市场营销价格策略
  • 榆次网站建设网站通栏设计素材
  • 在阿里云做的网站怎么进后台推广下载app
  • 做网站与全网营销搜索推广排名优化网站是怎么赢利的
  • 百度打开百度搜索整站seo怎么做
  • 电商网站可以用dw做搜索引擎优化介绍
  • 凯杰建设有限公司官方网站域名可以绑定网站吗
  • 燕十八html教程网站建设asp网站开发教程pdf
  • wordpress只能做博客吗巩义企业网站快速优化多少钱
  • 做前端常用的网站及软件南戴河区网站建设哪家好
  • 国内十大网站建设公司排名google app engine wordpress
  • 开发一个网站系统报价济南建设网站平台
  • 网站制作建设公司推荐常州网站公司怎么选
  • 做360手机网站优化免费发布推广的平台有哪些
  • 做花语的网站wordpress添加优酷视频播放器
  • 游戏型网站开发想做分销商有什么平台
  • 广东做网站公司南昌seo优化公司
  • 襄阳网站开发wordpress登陆界面
  • 做网站一定要云解析吗学广告设计需要什么学历