LINUX C/C++
文章平均质量分 85
qq_59028382
这个作者很懒,什么都没留下…
展开
-
gcc编译过程
一、总体概述 GCC的编译流程分为四个步骤: 1、预处理(Pre-Processing) 2、编译(Compiling) 3、汇编 (Assembliang) 4、链接(Linking) 二、解释步骤 XXX为源文件 YY为生成的文件 1、预处理(Pre-Processing) 预处理用于将所有的#include头文件以及宏定义替换成其真正的内容,预处理之后得到的仍然是文本文件,但文件体积会大很多。 将 .c 文件转换为 .i 文件,使用gcc命令:gcc -E XXX -o YY 对应于预处理命令 cpp原创 2021-09-09 16:20:15 · 5209 阅读 · 0 评论 -
C/C++ 程序占用内存的分配问题
一、程序占用内存分配 程序占用的内存分为 栈区、堆区、全局区(静态区)、文字常量区、程序代码区。 重点以下两个: 1、栈区(stack) 此区域由编译器自动释放。 2、堆区(heap) 一般由程序员手动释放。若是没有释放,程序结束时可能由OS操作系统回收。 栈(Stack):局部变量,函数参数等存储在该区,由编译器自动分配和释放.栈属于计算机系统的数据结构,进栈出栈有相应的计算机指令支持,而且分配专门的寄存器存储栈的地址,效率分高,内存空间是连续的,但栈的内存空间有限。 堆(Heap):需要程序员手动分配和原创 2021-06-24 17:05:51 · 559 阅读 · 0 评论