平台介绍:64位的redhat6,vim,gcc(make)
main函数
我们人为的定义了 main()函数作为函数的入口。
我们C源文件是如何生成可执行文件的: C源文件 -> 预处理 -> 编译 -> 汇编 -> 链接 -> 可执行文件。
编译器:gcc gcc 的源文件一定要写后缀,因为gcc 要根据后缀作编译选择(区分文件类型)
以 # 号开头的都只是在预处理中解决的。 主要是处理源文件中以“#”开头的预编译指令。 删除#define并展开宏 处理所有条件预编译指令,如#if, #ifdef, #endif 插入头文件到“#include”处 删除所有注释 添加行号和文件名标识,以便编译时编译器产生调试用的行号信息 保留所有#pragma编译指令。
不用定义名称,自动生成一个.s文件。 生成了一个汇编代码写的汇编文件
利用汇编程序(汇编器)将汇编语言源程序转换成0和1组成的机器指令序列(机器语言程序)( 生成了一个.o的目标文件.
将多个可重定位的目标文件.o合并以生成可执行文件,其可以被加载到内存中,由系统执行。 -o hello 表示生成的文件名字为hello。 我们就多了一个绿色的可执行文件hello
使用./可执行文件的文件名的表达方式运行可执行的文件。
./文件名生成可执行的文件分为4步走。预处理 -> 编译 -> 汇编 -> 链接,然后生成可执行文件。 但是gcc也提供了一个简单的方法gcc xxx.c,直接一步生成可执行文件。 也可以使用如下命令gcc xxx.c -o yyy.z,生成一个yyy.z的可执行文件。
学会vim配置脚本,常用的快捷方式。
Esc 进入命令模式:在命令模式中输入i进入边距模式;输入v进可视化模式;:q表示强制退出;:wq表示保存退出;
进入V可视化模式。把光标方块库函数里输入大写的K,(即按 shift+k)就可以查看库函数的man手册。
没有包含头文件就使用函数,使用的函数会默认返回一个int型的参数。
以函数为单位作为程序单位来编写,可以提高代码的复用性。如写+-*/的功能,可以把+-*/分成4个程序单位,如以后用到+法功能,就可以抠+法的程序单元出来方便复位 main函数是我们人为定义的一个最先开始的线程,在程序运行的适合可以结束。
C语言推荐 变量先定义后使用
return 0;和exit(0)是表示返回一个值给父进程看的。 在C语言中,我们习惯用0表示成功,非0表示失败。
用一下三种方式实现。
/* */ // #if 0 #endif(流程图,NS图,有限状态机FSM )描述出来
有限状态机这种思想来编程。
谁打开,谁关闭,谁申请谁释放。
