c语言学习日记
Cnc_chaconne
这个作者很懒,什么都没留下…
展开
-
C语言数组名和指针的区别
前言数组名和指针其实在用法感觉上非常相似,但是其本质有很大的不同,要了解他们的区别,要先从一些简单的知识入手,想要直接看结论的可以拉到最后前置知识符号表在程序中的变量是不占内存空间的,但是程序是怎么知道每个变量对应的地址呢?是因为编译器生成了一个符号表,该表记录了变量和内存的地址对应关系,当访问这个变量时,可以从符号表找到对应的地址,然后取出值比如说如下语句int i; //变量的声明i = 1; //变量的定义可以得到汇编代码是mov dword ptr [i]原创 2021-10-15 11:46:53 · 217 阅读 · 0 评论 -
GCC 编译过程
前言从点击编译到生成可执行文件的过程中,发生了许多,本文以一个简单的helloworld代码为例,来了解GCC的编译过程创建一个c程序代码#include <stdio.h>int main(){ printf("hello..."); return 0;}编译这个hello.c文件生成可执行文件(win平台的gcc)gcc hello.c -o hello.exe其实编译输出的过程中,gcc一共执行了四步操作1.预处理2.编译3.汇原创 2021-10-15 10:44:46 · 191 阅读 · 0 评论