C 语言(1)
1. 数据类型
数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类
1.1 基本数据类型
1.1.1 整型
整型数据在内存中的存放形式:数值是以补码表示的。
正数的补码和原码相同;
负数的补码:将该数的绝对值的二进制形式按位取反再加 1。
1) int:2 个字节;
2) short int:2 个字节;
3) long int或long:4 个字节;
4) unsigned int/short/long
八进制数通常是无符号数。八进制无符号数的表示范围为 0~0177777。
十进制无符号整常数的范围为 0~65535,有符号数为 -32768~+32767。
十六进制无符号数的表示范围为 0X0~0XFFFF或 0x0~0xFFFF。
1.1.2 实型
1) float:4 个字节
2) double:8 个字节
3) long double:16 个字节
在C语言中,实数只采用十进制。它有二种形式:十进制小数形式,指数形式。
* 指数形式:由十进制数,加阶码标志 “e” 或 “E” 以及阶码(只能为整数,可以带符号)组成。其一般形式为:a E n(a为十进制数,n为十进制整数)
1.1.3 字符型
字符值是以 ASCII 码的形式存放在变量的内存单元之中的。
char:1 个字节
字符串:字符串结束标志 "\0"
* 转义字符:
常用的转义字符及其含义
转义字符 |
转义字符的意义 |
ASCII 代码 |
\n |
回车换行 |
10 |
\t |
横向跳到下一制表位置 |
9 |
\b |
退格 |
8 |
\r |
回车 |
13 |
\f |
走纸换页 |
12 |
\\ |
反斜线符 "\" |
92 |
\' |
单引号符 |
39 |
\” |
双引号符 |
34 |
\a |
鸣铃 |
7 |
\ddd |
1 ~3 位八进制数所代表的字符 |
|
\xhh |
1 ~2 位十六进制数所代表的字符 |
|
1.1.4 枚举类型
1.1.5 类型自动转换规则
char, short → in t→ unsigned → long →double
* 所有的浮点运算都是以双精度进行的,即使仅含 float 单精度量运算的表达式,也要先转换成 double 型,再作运算。