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

泰安网站建设公司网站开发模板代码

泰安网站建设公司,网站开发模板代码,iapp网站怎么做软件,奇想网站建设这期我们来讲解结构体#xff0c;联合体#xff0c;以及枚举的讲解#xff0c;首先我们从概念开始一步一步的了解。 1#xff0c;结构体 1.1概念 C 语言中的结构体是一种用户自定义的数据类型#xff0c;它允许你将不同类型的变量组合在一起#xff0c;从而形成一个新…这期我们来讲解结构体联合体以及枚举的讲解首先我们从概念开始一步一步的了解。 1结构体 1.1概念 C 语言中的结构体是一种用户自定义的数据类型它允许你将不同类型的变量组合在一起从而形成一个新的数据类型。结构体在 C 语言中非常有用可以用于表示复杂的数据结构比如学生信息、员工记录、图形对象等。 定义结构体的基本语法如下c struct 结构体名 {数据类型 成员1;数据类型 成员2;// 更多成员... }; 在这里struct 是关键字后面跟着的是结构体的名称 紧接着是由大括号括起来的成员列表。 每个成员都有其自己的数据类型可以是基本类型如整型、浮点型、字符型等 也可以是其他的结构体类型。 1.2代码实现 很简单吧我们先来试一下 1.3结构体内存对齐 什么是内存存对齐为什么结构体会存在内存对齐内存对齐的规则是什么反正也不会告诉你。 在 C 语言中结构体内存对齐是指编译器在分配内存时为了提高访问效率而进行的一种内存布局优化。结构体的内存对齐是由编译器来决定的它遵循特定的对齐规则以确保结构体成员的访问具有最佳的性能。 在大多数情况下编译器会根据平台的要求和 CPU 架构的特性来进行内存对齐。常见的内存对齐规则如下 1.成员变量的偏移量必须是其大小的整数倍。 2.结构体的大小必须是其最大成员大小的整数倍。 根据内存对齐规则编译器会进行内存对齐可能导致结构体的大小不等于其成员变量大小之和。这是因为编译器会在适当的位置插入填充字节以确保结构体成员按照对齐要求排列从而提高访问效率。 具体的对齐规则可能会因编译器和平台而异你可以使用 sizeof 运算符来获取结构体的大小以便更好地理解编译器对结构体内存布局所做的优化。 当然我们也可以通过设置偏移量来改变其大小 2联合体 2.1概念 在 C 语言中联合体union是一种特殊的数据结构它允许在同一个内存位置存储不同类型的数据。与结构体不同的是联合体中的各个成员共享同一块内存空间因此联合体的大小由最大的成员决定。 2.2代码实现 3枚举 3.1概念 在 C 语言中枚举enum是一种用户定义的数据类型用于定义一组具名的整型常量。枚举类型可以帮助提高代码的可读性使程序员能够使用有意义的符号名称来表示特定的值。 3.2代码实现 3.3define和枚举对比 很多初学C语言的小伙伴觉得枚举很鸡肋用define就能实现的事情干嘛要用枚举。 枚举的优点 类型安全性枚举提供了类型安全因为枚举常量属于特定的枚举类型在赋值和比较时具有类型信息。可读性枚举符号名可以使代码更加易读和清晰因为它们提供了有意义的名称来表示常量值。编译时检查由于枚举常量在编译时被解析因此编译器可以对其进行检查避免拼写错误或值的误用。 宏定义的优点 灵活性宏定义可以定义更复杂的常量如带参数的宏、条件编译等具有更大的灵活性。无类型约束宏定义不受类型限制可以用于定义任何类型的常量包括字符串、表达式等。 如何选择 当需要一组相关的常量并且这些常量属于同一逻辑实体时通常使用枚举更为合适。当需要定义简单的常量或进行代码替换时宏定义可能更加适用。 总的来说枚举提供了更好的可读性和类型安全性而宏定义则更加灵活。 存在就有道理第 4每期一问 上期答案如何写出自己的atoi函数 #includestdio.h #includeassert.h #includectype.h #includestdlib.h enum State {VAILD,INVAILD }Sta INVAILD;//创造变量默认为非法int my_atoi(const char* str) {assert(str);if (*str \0){return 0;}while (isspace(*str)){str;}int flag 1;if (*str ){flag 1;str;}else if (*str -){flag -1;str;}long long ret 0;while (*str ! \0){if (isdigit(*str)){ret ret * 10 flag * (*str - 0);//减去字符0才是数字0if (ret INT_MAX || ret INT_MIN){return 0;}}else{return (int)ret;//强制类型转化为int函数的返回值是int}str;}if (*str \0){Sta VAILD; //正常转换完了到末尾的 \0}return (int)ret; 这期的问题是使用malloc函数模拟开辟一个3*5的整型二维数组开辟好后使用二维数组的下标访问形式访问空间。
http://www.pierceye.com/news/670018/

相关文章:

  • 设计坞网站官方下载4399网页游戏入口
  • 太原百度网站建设如何联系网站管理员
  • 海东高端网站建设公司视频网站 费用
  • 可以帮别人备案网站吗手机建网站公司
  • 四川建设厅网上查询网站信用网站系统建设方案
  • 克隆网站后台做系统用哪个网站好
  • html5 手机网站页面实例wordpress 路由404
  • 百度地图嵌入公司网站wordpress如何去掉分类里面的大字
  • 山东住房与城乡建设网站够完美网站建设
  • 班级网站建设首页报告如何查询一个网站是否备案
  • 艺术设计类网站石家庄公司的网站设计
  • 舞钢网站建设企业做网站需要什么软件
  • 网站开发上市公司专业的网站建设价格低
  • 备案网站有哪些资料公司名字大全四个字
  • 网站推广预期达到的目标建湖人才网手机版
  • 营销网站设计公司排名wordpress图片缓冲
  • 山西建设官方网站第三方网站流量统计
  • 企业网站用wordpress龙岗网站建设网站排名优化
  • 成都建设网站哪家好事件营销的特点
  • 如何利用模板做网站视频wordpress手机版边侧导航
  • 网站制作在哪里找wordpress 设置登陆界面
  • 济南seo网站建设上海seo网站优化_搜索引擎排名_优化型企业网站建设_锦鱼网络
  • 深圳网站备影楼网站建设
  • asp网站开门桂林市区
  • dw个人网站主页怎么做网站前端用什么语言
  • 网站建设是平面设计吗网站如何做中英文双语言
  • 网站关键词先后论坛网站在线生成
  • 无为建设局网站安装wordpress xampp
  • 广药网站建设试卷wordpress人力资源模板下载
  • 电商网站规划的开发背景明年做那个网站能致富