C语言的编译过程:
.c文件(源代码)>预编译>编译>链接>可执行程序
数据类型
入门学习时接触的一般都是基本类型。
整型也就是我们常说的整数,浮点型也就是我们常说的小数。再往下分就是精度的区别,分配内存的不同,精度:short int<int<long int,其中int一般是四个字节,不同的编译器可能有所差距,但是long比int长。一般来说精度当然是越大越好,但是也要考虑内存的分配问题,在精度合适的情况下,使得内存也最小。
#define宏定义
#define b 5//b是宏变量的名称,5是对它定义的值
int a = b;//b被替换为5
//在C语言中,我们可能会遇到一些过时或者不安全的函数,比如在scanf函数使用过程中
//这时候我们可以在预编译部分加上宏定义来禁止此类警告
//#define _CRT_SECURE_NO_WARNINGS
const常变量
const int a = 10;
a = 20;
这么写程序会报错,报错显示等号左边应该是可修改的左值,而a已经被const定义为常变量,变量a的值不可修改。
进制:
n进制说白了就是逢n进1
二进制里边一个位只能表示0或者1两种装态,简称bit
一个字节为8个二进制,简称比特,8比特就是一个字节
一个字位位两个字节,简称WORD
两个字位双字,简称DWORD
C语言中表示8进制用0,表示16进制用0x
int a = 010;
int b = 0xB;
printf("a=%d,b=%d",a,b);
//运行结果为a=8,b=11(结果已经转化为10进制数)
原码:将最高位作为符号位(0代表正,1代表负),
其余各位代表数值本身的绝对值
反码:一个数如果为正,那么反码与原码相同。一个数如果为负,那么符号位为1,其它各位与原码相反
补码:正数的原码、反码、补码相同。负数的最高位为1,各位原码取反,最后再整个数加上1。
补码的符号位不动,其余各位取反,整个数加上1,得到原码。
printf的输出,我们在进制曾经将八进制数和十六进制数以十进制的方式输出
对应输出内容的不同格式可以参考以下格式符的表格
C语言转义符
在《学习C语言基础(1)》中,有提到过“\n”,它是换行的意思。
那么这个“\n”就是转义符的一种。