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

工程设计东莞网站建设技术支持wordpress+打断点

工程设计东莞网站建设技术支持,wordpress+打断点,网站建设类公司新闻,搜狗搜索太原运营中心怎么样本文并不讲C语言的基础 文章目录1 空struct的大小2 结构体与柔性数组2.1 柔性数组的使用方法2.2 柔性数组使用代码案例分析3 C语言中的union分析3.1 使用union判断系统大小端4 总结1 空struct的大小 C语言中的struct可以看成是变量的集合 如果一个struct里面什么都没有#… 本文并不讲C语言的基础 文章目录1 空struct的大小2 结构体与柔性数组2.1 柔性数组的使用方法2.2 柔性数组使用代码案例分析3 C语言中的union分析3.1 使用union判断系统大小端4 总结 1 空struct的大小 C语言中的struct可以看成是变量的集合 如果一个struct里面什么都没有是空的那么它的大小是多少呢?(不考虑C语言的特性) 实际上这在不同的编译器中还是不一样的。比如下面的代码 #include stdio.hstruct TS {};int main() {struct TS t1;struct TS t2;printf(sizeof(struct TS) %d\n, sizeof(struct TS));printf(sizeof(t1) %d, t1 %p\n, sizeof(t1), t1);printf(sizeof(t2) %d, t2 %p\n, sizeof(t2), t2);return 0; }使用gcc 4.4.5 编译运行结果如下 使用vs 2017编译运行会报错 所以这个问题其实没有什么意义在我看来。 2 结构体与柔性数组 我们都知道C语言中的数组都是固定大小的。一开始定义数组的时候就需要确定数组的大小。这样其实很不友好如果确定数组大小后后面大小又不够就需要给数组重新分配内存空间这样会带来比较大的开销。柔性数组可以解决这个问题。 柔性数组是一种数组大小待定的数组在C语言中可以使用结构体产生柔性数组C语言中结构体的最后一个元素可以是大小未知的数组。 其中SoftArray 中的array仅仅是一个待使用的标识符不占用存储空间。所以sizeof(struct SoftArray) 4 2.1 柔性数组的使用方法 下图是定义柔性数组并在需要的时候为柔性数组分配合适的内存空间的代码示例 上述代码完成后将得到如下图所示的柔性数组 在上图的柔性数组中第一个元素存的是柔性数组的长度即5 。 后面的5个元素就是柔性数组的内容。 2.2 柔性数组使用代码案例分析 下面的代码是创建柔性数组并初始化然后打印的C语言代码 #include stdio.h #include malloc.hstruct SoftArray{int len;int array[]; };struct SoftArray* Creat_Soft_Array(int size){struct SoftArray* ret NULL;if(size 0){ret (struct SoftArray*)malloc(sizeof(int) size * sizeof(int));ret-len size;}return ret; }void delete_soft_array(struct SoftArray* sa){free(sa); }void Init_SoftArray(struct SoftArray* sa){int i 0;if(NULL ! sa){for(i 0; isa-len ; i){sa-array[i] i1;}} }int main(){int i 0;struct SoftArray* sa Creat_Soft_Array(5);Init_SoftArray(sa);for(i 0; isa-len; i){printf(%d\n, sa-array[i]);}delete_soft_array(sa);return 0; }运行结果如下 3 C语言中的union分析 C语言中的union在语法上与struct类似与struct不同的是union值分配最大成员的空间其他成员共享这个空间。某一时刻只有一个成员是存在的。 3.1 使用union判断系统大小端 union的使用受系统大小端的影响。系统大小端如果不懂请自行google搜索 如下图 如下代码如果打印的是1就是小端如归打印的是0就是大端 #include stdio.hint system_mode() {union SM{int i;char c;};union SM sm;sm.i 1;return sm.c; }int main() {printf(System Mode: %d\n, system_mode());return 0; }在我的虚拟机Ubuntu上运行结果是1小端模式。 4 总结 struct 结构体中的每个数据成员都有独立的存储空间struct 可以通过最后的数组标识符产生柔性数组union中所有数据成员共享同一个存储空间union的使用会受系统大小端的影响
http://www.pierceye.com/news/806477/

相关文章:

  • 网站后台管理系统 aspwordpress拖拽上传
  • 华为手机官方网站登录爬虫做视频网站
  • 山东省工程建设信息官方网站河南网站seo推广
  • 低成本做网站 白之家重庆市建设执业资格注册管理中心网站
  • 电子商务网站建设需求在别的公司做的网站可以转走吗
  • 网站流量怎么做乡1万做网站需要几个人
  • 阿里云centos7做网站怀化网站seo
  • 我做的网站怎样被百度收录易语言 做网站mysql
  • 花店网站模板免费下载9个做简历的网站
  • 东港区网站制作seo推广模式是什么
  • 用织梦做网站能练技术吗广州专业网络推广公司
  • 下载ppt模板免费的网站在线做头像网站
  • 网络推广怎么免费做网站内部优化的方法
  • 沧州wap网站制作哈尔滨建设网证件查询
  • 一键查询注册过的网站快速排名教程
  • 响应式模板网站泰安招聘信息最新招聘2021
  • 信阳市住房和城乡建设厅网站wordpress加载速度
  • 建设本地网站 配置iis百度h5在线制作免费
  • 网站托管服务器做外贸去哪些网站找老外
  • 一个空间可以做几个网站微信公众号 做不了微网站
  • 嘉兴seo外包公司黄骅seo
  • 做网站录入和查询需求网络推广公司口碑
  • 招远专业做网站公司wordpress获取qq昵称 头像
  • 河北网站建设业务服务称赞的项目管理平台
  • 用jsp做的网站首页如何建立一个网站来卖东西
  • 外贸型网站建设的基本流程宣传型网站建设
  • 济南手机网站开发公司贵阳网络推广公司
  • 网站开发需求模板找网络公司做推广费用
  • 网站推广工具推荐广州公关公司招聘
  • 网站搭建平台源码做健身网站开题报告