1. 程序的编译与链接
平时我们写的都是后缀为.c的文件,经过编译后生成目标文件(.obj),最后通过链接后生成可执行程序(.exe)
源文件 ——> 编译 ——> 链接 ——> 可执行程序
而编译部分又包括: 预处理、编译、汇编
预处理:头文件的包含、#define定义符号的替换、注释的删除
编译:把C语言代码翻译成汇编代码
汇编:把汇编指令翻译成二进制指令
2. 预定义符号
__FILE__
__LINE__
__DATE__
__TIME__
__STDC__//进行编译的源文件
//文件当前的行号
//文件被编译的日期
//文件被编译的时间
//如果编译器遵循ANSI C,其值为1,否则未定义
int main()
{
printf("%s\n", __FILE__);//进行编译的源文件
printf("%ld\n", __LINE__); //文件当前的行号
printf("%s\n", __DATE__); //文件被编译的日期
printf("%s\n", __TIME__); //文件被编译的时间
printf("%d\n", __STDC__); //如果编译器遵循ANSI C,其值为1,否则未定义
return 0;
}