前言
C语言提供了丰富的数据类型来描述生活中的各种数据。所谓“类型”,就是相似的数据所拥有的共同特征,编译器只有知道了数据的类型,才知道怎么操作数据,而不同的数据类型可以用来创建不同形式的变量,下面我们就来学习一下C语言的内置数据类型和变量。
一、内置数据类型介绍
注:C语言的数据类型分为四类,本篇博客讲解的是较为基础的内置数据类型
1.字符型(char)
字符型变量用于存储一个单一字符,在 C 语言中用 char 表示,其中每个字符变量都会占用 1 个字节。在给字符型变量赋值时,需要用一对英文半角格式的单引号(‘ ')把字符括起来。字符变量实际上并不是把该字符本身放到变量的内存单元中去,而是将该字符对应的 ASCII 编码放到变量的存储单元中。
char 的格式匹配符(打印格式) 为:%c。
数值表示范围是:
signed char : -2^(8-1) – 2(8-1) -1 (即 -128 ~ 127)
unsigned char: 0 ~ 2^8 -1 (即 0~255)
2.整型
(1)有符号整型
有符号整型的数据类型通常包括 int、short、long、long long 四种,因为是有符号类型,所以前面要加上 signed ,但是通常省略,也就是说在代码中直接打出 int 类型就代表是有符号类型的。
-
int类型
数据类型大小是 4 字节,能表示的数值范围是
-2^(32-1) – 2^(32-1)-1 (即 -2147483648 ~ 2147483647)
打印类型是 %d ,使用格式为 int 变量名 = 值; -
short类型
数据类型大小是 2 字节,能表示的数值范围是
-2^(16-1) – 2(16-1) -1 (即 -32768 ~ 32767)
打印类型是 %hd ,使用格式为 short 变量名 = 值; -
long类型
数据类型大小是 4 字节,能表示的数值范围是
-2^(32-1) – 2^(32-1)-1 (即 -2147483648 ~ 2147483647)
打印类型是 %ld ,使用格式为 long 变量名 = 值; -
long long类型
数据类型大小是 8 字节,能表示的数值范围是
-2^(63) ~ 2^(63)-1 (这个数足够大了)
打印类型是 %lld ,使用格式为 long long 变量名 = 值;
(2)无符号整型
无符号数用 unsigned 表示 ,只表示数据量,而没有方向(没有正负,且无符号数最高位不是符号位,而就是数的一部分,无符号数不可能是负数。
-
unsigned int 类型
数据类型大小是 4 字节,能表示的数值范围是
0 – 2^(32)-1 (即 0~4294967295)
打印类型是 %u ,使用格式为 unsigned int 变量名 = 值; -
unsigned short 类型
数据类型大小是 2 字节,能表示的数值范围是
0 ~ 2^8