1.作为函数参数的结构
当结构体作为参数传入一个函数时,C语言会将结构体拷贝传入堆栈,再一一销毁,这个过程对空间利用率是很低的,更好的处理方法是传递指针,这样进入堆栈的内存也只是一个指针的内存而已,效率更高。
如果想要进一步提高效率的话,可以声明为寄存器变量且可以使用const以防止结构体在传递过程中数据被改变。
2.联合
首先联合体中所有成员都是储存于同一内存的,分配给联合体的内存取决于它的最长成员的长度。因此在申明联合体内部成员时,可以使用指针来减少内存,当它觉得使用哪一部分时再动态分配给它就可以了。
C和指针(pointers on C)第十章学习笔记
最新推荐文章于 2024-11-11 18:02:24 发布