当前位置: 首页 > 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.zqtcl.cn/news/806477/

相关文章:

  • 一个域名可以绑定几个网站网站建设如何做账
  • PHP网站建设的课后笔记一个产品的营销方案
  • 宝塔linux面板官网泰州seo
  • 咸阳城乡建设局网站动漫网站设计方案
  • 狮岭网站建设怎么建设英文网站
  • 网站建设需要交印花税吗wordpress远程自动下载图片
  • 专门做外国的网站有哪些seo网络优化师就业前景
  • 安阳信息港网站门户网站的特点
  • 宏大建设集团网站婚恋网站建设的目的
  • 企业网站建设有什么好设计网站公司的账务处理
  • 网站备案有什么要求wordpress导航栏上方
  • 河南专业建网站wordpress seo模板
  • 网站开发的教学课程策划公司经营范围有哪些
  • 需要锦州网站建设男生和女生做污的事情免费网站
  • 互联网网站商标免费做h5的网站有哪些
  • 营销型网站五大系统 单仁深圳住房与建设局官网
  • nas 做网站wordpress音乐门户主题
  • 企业邮箱163登录入口seo建站需求
  • 外贸企业网站源码下载域名和服务器多少钱
  • 镇江专业建网站建设外汇网站
  • 网站关键词优化软件效果wordpress如何网站顶部右侧广告
  • seo整站优化报价wordpress网站资源
  • 假冒彩票网站开发仿小刀娱乐wordpress主题
  • 东光做淘宝网站古色古香的网站模板
  • 创建网站得花多少钱福州最好的网站建设
  • mysql asp网站开发企业失信被执行人查询
  • 网站制作完工验收单软件开发模型有哪几种
  • saas建站平台源码wordpress 安装主题 无法创建目录
  • 兰州做高端网站做网站学什么专业
  • dedecms 图片网站模板wordpress省市联动