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

如何创建自己的网站如何做盗版电影网站

如何创建自己的网站,如何做盗版电影网站,pc网站转换成微网站,h5〃wordpress09 字节对齐_结构体数组 一、sizeof关键字1.1 基本类型的sizeof1.2 数组类型的sizeof1.3 结构体类型的sizeof 二、字节对齐--结构体对齐2.1 结构体对齐2.2 对齐规则2.2.1对其参数规则2.2.2 数据成员对齐规则2.2.2.3 结构体的总大小2.2.2.4 结构体嵌套 三、typedef关键字3.1 对已… 09 字节对齐_结构体数组 一、sizeof关键字1.1 基本类型的sizeof1.2 数组类型的sizeof1.3 结构体类型的sizeof 二、字节对齐--结构体对齐2.1 结构体对齐2.2 对齐规则2.2.1对其参数规则2.2.2 数据成员对齐规则2.2.2.3 结构体的总大小2.2.2.4 结构体嵌套 三、typedef关键字3.1 对已有类型定义别名3.2 一维数组类型的定义格式3.3 二维数组类型的定义格式3.4 结构体的定义格式 四、作业 一、sizeof关键字 1.1 基本类型的sizeof 可以适用类型也可以适用变量 1.2 数组类型的sizeof 1.3 结构体类型的sizeof 二、字节对齐–结构体对齐 2.1 结构体对齐 例1 struct Test {char a;int b ; }; int main(int argc, char* argv[]){Test t;printf(%d\n,sizeof(t));printf(%d\n,sizeof(Test));return 0; } 例2 struct Test {int a ;__int64 b ;char c ; };int main(int argc, char* argv[]){Test t;printf(%d\n,sizeof(t));printf(%d\n,sizeof(Test));return 0; } 8的倍数 例3 struct Test {int a ;__int64 b ;char c ;char d ; }; int main(int argc, char* argv[]){Test t;printf(%d\n,sizeof(t));printf(%d\n,sizeof(Test));return 0; } 2.2 对齐规则 2.2.1对其参数规则 #pragma pack( n ) struct AA{//…... } #pragma pack( ) 1.对齐参数n为字节对齐数其取值为1、2、4、8默认是8。 2.如果这个值比结构体成员的sizeof值小那么该成员的偏移量应该以此值为准即是说结构体成员的偏移量应该取二者的最小值. 对其操作为 2.2.2 数据成员对齐规则 结构的数据成员第一个数据成员放在offset为0的地方以后每个数据成员存储的起始位置要从该成员大小的整数倍开始(比如int在32位机为字节则要从4的整数倍地址开始存储). 2.2.2.3 结构体的总大小 结构体的总大小也就是sizeof的结果必须是其内部最大成员的整数倍不足的要补齐。 2.2.2.4 结构体嵌套 如果一个结构里有某些结构体成员则结构体成员要从其内部最大元素大小的整数倍地址开始存储。如(struct a里存有struct bb里有charintdouble等元素那b应该从8的整数倍开始存储.) 三、typedef关键字 typedef为C语言的关键字作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型int,char等和自定义的数据类型struct等。 3.1 对已有类型定义别名 typedef unsigned char BYTE; typedef unsigned short WORD; typedef unsigned int DWORD; 3.2 一维数组类型的定义格式 typedef int vector[10]; int main(int argc, char* argv[]) {vector v;v[0] 1;v[1] 2;v[2] 3;v[3] 4;v[4] 5;return 0; } 3.3 二维数组类型的定义格式 typedef int name[5][5]; typedef int nameTable[5][5][5]; int main(int argc, char* argv[]) {matrix v;nameTable n;v[0][0] 1;v[0][1] 2;v[0][2] 3;v[0][3] 4;v[0][4] 5;n[0][0][0] 1;return 0; }3.4 结构体的定义格式 typedef struct student {int x;int y; }stu;四、作业 代码 #include stdio.h #include string.hstruct Point{float x;float y;float z; };struct Monster{char name[30];int level;int ID;int damage;int blood;Point point; }; Monster monster[10];void Assignment(){strcpy(monster[0].name, 这是一个精英怪);monster[0].level 20;monster[0].ID 1001;monster[0].damage 18;monster[0].blood 360;monster[0].point.x 20.1;monster[0].point.y 20.1;monster[0].point.z 20.1; }void Print(){printf(怪物的名字是%s\n, monster[0].name);printf(怪物的等级是%d\n, monster[0].level);printf(怪物的ID是%d\n, monster[0].ID);printf(怪物的伤害是%d\n, monster[0].damage);printf(怪物的血量是%d\n, monster[0].blood);printf(怪物的位置x坐标是%f\n, monster[0].point.x);printf(怪物的位置y坐标是%f\n, monster[0].point.y);printf(怪物的位置z坐标是%f\n, monster[0].point.z); } int main(int argc, char* argv[]){Assignment();Print();return 0; } 顺便画个字节对齐分析图 共计一个Monster结构体大小为60字节。 printf(“%d\n”, sizeof( monster[0]));得到60 printf(“%d\n”, sizeof(Monster));得到60 顺便反汇编看看
http://www.zqtcl.cn/news/513588/

相关文章:

  • 做效果图有哪些网站seo怎么做关键词排名
  • 深圳手机网站开发什么网站可以做英语题
  • 网站优化什么意思图片展示网站
  • 建德做网站米趋外贸网站建设
  • 国外优秀的设计网站八爪鱼磁力搜索引擎
  • 网站建设优化陕西网络营销推广方法与策略
  • 网站建设推广者怎样找到客户百度seo排名帝搜软件
  • 绵阳网站托管网站建设第一品牌
  • 张家港网站建设培训班电商seo引流
  • 网站安全怎么做手机网站 焦点图
  • 阿里云做网站的代码网上申请入团网站
  • 精品课程网站怎么做建筑图纸符号大全解释
  • 高权重网站 内页做跳转给新网站许昌做网站公司哪家专业
  • 咸阳网站建设工作室网站建设经
  • 网站怎么做短信接口新浪wordpress
  • 方维o2o 2.9蓝色团购网站程序源码模板做一电影网站怎么赚钱
  • 口碑好网站建设资源新昌网站建设
  • 苏州做网站的公司排名泉州网络推广专员
  • 无为县做互联网网站备案的时候网站建设方案书要吗
  • 修改网站的备案主体dede网站地图不显示文章列表
  • 建立个人网站的成本织梦html5手机网站模板
  • 怎么自己建一个网站吗php网页设计培训
  • 深圳大型论坛网站建设wordpress国内加速
  • 仿站怎么做广告装饰公司名字
  • 黄冈网站推广收费标准wordpress导航页面设置密码
  • 做网站会犯法吗贵州省建设厅城乡建设网站
  • 做网站和做公众号资金盘网站怎么建设
  • 全国最好的网站建设案例推广方法视频
  • 嘉兴网站建设策划方案在海口注册公司需要什么条件
  • 旅游网站国际业务怎样做建设企业官方网站企业登录