首页 > 代码库 > 2day_C基
2day_C基
【1】数据类型
1--- 基本数据类型
int char
2--- 构造数据类型
定义数据类型
用类型去定义变量
【2】bool
1--- <stdbool.h>
2--- 数据只有两个状态:0、1
【3】char
1--- 一个字节
2--- signed char a = -5; //1 000 0101 (最高位变更成符号位)
二进制 十进制 //-128 ~ +127
0000 0000 0
1000 0000 -128
1111 1111 -127
0111 1111 +127
1000 0001 -1
0000 0001 +1
3--- unsigned char b = 5; //0 ~ 255
【4】数据存储(二进制补码)
char a = -5;
正数:源码、反码、补码都一样
负数:
1、存储时 (源码->反码-> 补码)
1000 0101 源码
1111 1010 反码:符号位不变,其它位取反
1111 1011 补码:反码加1
2、读取时 (补码->反码-> 源码)
【5】整形数据
int 占4字节
short 占2字节
long 占4字节(32位操作系统)
【6】浮点型数据
float 占4字节
double 占8字节
【7】常量
整形常量:
12 012 0x12
指数常量:
12.34e-1 ==> 12.34 * 10^-1
0.1234e+2 ==> 0.1234 * 10^2
字符常量:
‘A’
字符串常量:字符串就是以‘\0’作为结束标志。
“A”
宏定义:
#define N 4
【8】存储模型
<存储类型> <数据类型 > <变量名> ;
auto:不写的时候默认为auto类型
1--- 修饰一个局部变量时:存储期与函数同步
2--- 修饰一个全局变量时:存储期与程序同步
register:数据存储在寄存器中,只可以修饰局部变量。
static:静态存储
1--- 数据的存储期与程序同步
2--- static 修饰的变量只初始化一次
3--- static 修饰的数据默认初始化为0
extern :访问外界数据时做一个标识
【9】强制类型转换
(数据类型)
【10】运算符
1--- 算数运算
+ - * / %(参与运算的数据必须是整形数据)
++ -- (自增、自减,用于变量的运算符,隐含赋值操作)
2--- 关系运算符(结果只有两个状态:0、1)
> >= < <= == !=
3--- 逻辑运算(结果只有两个状态:0、1)
与: &&(一假则假)
或: ||(一真则真)
非: !(真变假,假变真)
4--- 位运算(参与运算的是二进制补码)
取反运算 : ~ (0变1,1变0;)
与 : &
或 : |
异或 : ^ (相同为0,不同为1)
x>>n : x / 2^n
x<<n : x * 2^n
5--- 三步运算
int a = 5, b = 6;
a ^= b;
b ^= a;
a ^= b;
完成数据交换,参与运算的必须是变量,针对于基本数据类型使用
6--- 条件运算符
<表达式1> ? <表达式2> : <表达式3>
表达式1为真:执行表达式2
表达式1为假:执行表达式3
2day_C基