一。今天学习
gcc 编译
1)一步到位式:gcc xxx.c -o [yyy] (如果没写yyy ,就是默认 a.obj)
2) 分布编译式:
gcc -E xxx.c -o aaa.i (预编译)
gcc -S aaa.i -o bbb.s (编译)
gcc -c bbb.s -o kkk.o (汇编)
gcc kkk.o -o yyy (链接)
C语言
一。结构
#include <xxx.h> //标准头文件
#include "yyy.h" //非标准头文件
int main(int argc, char *argv[]) //程序入口
{
....... //程序主体
}
二。预处理
#include ... (头文件预处理)
#define ... (宏预处理)说明:宏预处理只是简单替代
注:带参宏 类似 #defline NNN(a,b) a,b 也是替代
三。数据类型
int:整型 int 4字节 <%d>
long int 8字节(64位);4字节(32位)<%ld>
short int 2字节<%d>
long long int 8字节<%ld>
float:浮点型 float 单精度 4字节 <%f>
double float 双精度 8字节 <%lf>
char:字符型 char 1字节 <%c> ...若记成%d 就成了ASCII码了
常用的ascii码:
\n (10) 空格(32) a(97) A(65) 0(48)
二、作业
1)导图(?还不太会画。大致就是上面所学今天)
2)
3)宏定义注意事项
a)宏定义 由于是简单替代,在引用时要注意其范围及引用出来的数据类型
b)宏定义 用起来方便是事实,但也有安全隐患。比如宏定义叠加操作,值可能超出其原数据类型的最大值
4)
5) printf 是输出命令
scanf 是输入命令(预习中)
6)0b01111100=0x7c=7*16+12=124
93=5*16+13=0b01011101
153=10*16-7=9*16+9=0x99
0b10100001=0241
0b10111000=0xb8