Linux C 程序 (SIX)
C语言语句
1.空语句:当一个if或者while判断部分能完成工作,空语句可以用来表示if或者while内的空循环体
1 if(a == b );
2.gcc编译器
1 //程序的编译过程: 2 // 预处理:pre-processing 3 // 编译:compiling 4 // 汇编:assembling 5 // 链接:linking 6 7 //预处理阶段:*.c或者*.C文件会预处理成*.i文件 ,这个阶段主要处理#ifdef #include #define 8 命令:gcc -E test.c -o test.i 9 10 //编译阶段 :输入*.i文件,编译生成汇编文件*.s 11 命令:gcc -S test.i -o test.s 12 13 //汇编阶段 ,将*.s 变成*.o二进制文件 14 命令:gcc -c test.s -o test.o 15 16 //链接阶段:将*.o二进制文件汇聚成一个可执行的文件 17 命令:gcc test.o -o test 18 19 //上述过程可以简述为: 20 命令:gcc -c test.c -o test.o 21 gcc test.o -o test 22 或者: 23 gcc test.c -o test
3.gcc常用选项;
1 //同时编译多个*.c文件 2 命令:gcc -o test file1.c file2.c file3.c 3 //三个文件编译后生成test可执行文件,注意三个文件只能有一个允许有main函数,如果是仅仅编译目标文件,那可以没有main函数。
4.gcc最基本的用法:
1 //-c 只编译,不连接成可执行文件 2 //-o output_filename 确定输出的文件名 3 //-g 产生调试器gdb必须的符号,要对源码进行调试,必须在编译的时候加这个参数 4 //-O 对程序进行优化编译连接,但是编译会相对慢一些 5 //-O2 比-O更好的优化编译,但是编译连接会更慢 6 //-Wall 输出所有警告信息 7 //-w 关闭所有警告,建议不要使用此选项 8 //IDirname ,将名为IDirname的目录加入到程序头文件目录列表中,预处理阶段使用的选项 9 10 //C语言头文件会被大量使用,通常是 Header files 和定义文件 definition files 组成。 11 //头文件包含函数原型声明,常量定义的文件,用于保存程序的声明 12 //定义文件用于保存程序的实现implementation。 13 //头文件以.h为后缀 14 #include<stdio.h> //去系统预设的包含文件目录去找 一般是系统提供的头文件 系统预设的包含目录为 /usr/include 15 #include "stdio.h" //先到当前目录去找,再到指定的IDirname去找 自己写的一般放在当前目录,大型程序会统一放在一个目录 16 17 //-L dirname 将名为dirname的目录加到程序库文件的搜索目录中,在连接过程中使用的参数。
5.系统提供的库分为两种:静态库和动态库
gcc默认的库文件存放目录 /usr/lib
6 问题:
1.写出float与0比较的语句
1 //由于float精度的问题不可写成: 2 if(x == 0.0); 3 if(x != 0.0); 4 //应该写成: 5 if(x >= -0.00001 && x <= 0.00001); 6 7 //不可将浮点型变量用 == 或者 !=比较,设法转换成 <= 和 >=
2.switch 条件必须是整型和char
3.for(;1;)是一个死循环
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。