C语言
文章平均质量分 66
flying-piggy
这个作者很懒,什么都没留下…
展开
-
#pragma pack(n)
C/C++ 数据成员对齐规则利器 #pragma pack()C语言中经常遇到数据成员(结构体/联合体)对齐的问题编译器依据硬件环境,会有一套默认的对齐规则,4字节或8字节对齐,目的是减少数据读取次数(内存读取到寄存器),加快CPU的计算速度数据成员对齐带来的好处是运算性能的提升,但是随之而来的问题是内存膨胀,尤其是需要大数据量网络传输的场景,此问题尤为凸显C/C++ 提供了对数据成员的p原创 2016-12-28 22:42:20 · 318 阅读 · 0 评论 -
system与exec系列函数对比
待填充原创 2017-12-12 05:44:35 · 349 阅读 · 0 评论 -
C语言中的宏定义
C/C++语言中的宏定义最近在阅读代码是发现一个宏定义很奇怪,变对C语言中的宏定义的基本知识进行了简单整理:普通宏定义函数宏定义C语言中宏的调试方法代码块下列C代码中包含两种宏定义,例如:#include <stdio.h>#define MAX_CONNECTION 1000#define MNG_PORT 5000#define MI...原创 2018-02-17 00:14:39 · 4703 阅读 · 0 评论 -
C语言长跳转函数setjmp和longjmp
C语言长跳转函数解决异常处理问题较为严谨的C程序开发中,必须检测每一次函数调用的返回值及可能出现的错误,并做相应的处理。但是这样造成的后果就是冗长繁琐的代码。C语言中goto语句能实现函数内部代码片段的跳转,但是无法解决跨函数的跳转问题。C语言提供了长跳转机制,setjmp与longjmp函数配合使用,解决C程序中的异常处理问题,类似于C++/Java语言中的try catch机制。(...原创 2018-02-17 23:32:43 · 2177 阅读 · 0 评论 -
C/C++ visibility
visibility用于设置动态链接库中函数的可见性,将变量或函数设置为hidden,则该符号仅在本so中可见,不可见。Why is the new C++ visibility support so useful?为什么说C++ visibility如此有帮助It very substantially improves load times of your DSO (Dynamic Sh...原创 2018-11-09 23:25:15 · 4619 阅读 · 1 评论