C语言从入门到精通之【数据类型和关键字】

C语言从入门到精通之【数据类型和关键字】_第1张图片

数据类型在程序使用之前已经预先设定好了,在整个程序的运行过程中没有变化,这些称为常量(constant)。其他数据类型在程序运行期间可能会改变或被赋值,这些称为变量(variable)。

变量类型有几种,如表格所示,在C语言中,用int关键字来表示基本的整数类型。后3个关键字(long、
short和unsigned)和C90新增的signed用于提供基本整数类型的变式,例如unsigned short int和long long int。char关键字用于指定字母和其他字符(如,#、$、%和*)。另外,char类型也可以表示较小的整数。float、double和long double表示带小数点的数。_Bool类型表示布尔值(true或false),_complex和_Imaginary分别表示复数和虚数。

位、字节和字

计算机的基本存储单元是字节。在提到变量类型时,我们还要意识到它所占的位数。对于应届生,这问题通常也会被问到。最小的存储单元是位(bit),可以储存0或1。字(word)是设计计算机时给定的自然存储单位。

32位机

char :1个字节

指针变量: 4个字节(32位的寻址空间是2^32, 即4GB)

short int : 2个字节

int: 4个字节

unsigned int : 4个字节

float: 4个字节

double: 8个字节

long: 4个字节

long long: 8个字节

unsigned long: 4个字节

64位机

char :1个字节

指针变量: 8个字节

short int : 2个字节

int: 4个字节

unsigned int : 4个字节

float: 4个字节

double: 8个字节

long: 4 / 8个字节(视具体情况而定)

long long: 8个字节

unsigned long: 8个字节

整数

在C语言中,整数是没有小数部分的数。例如,整数7以二进制写是111。因此,要在8位字节中储存
该数字,需要把前5位都设置成0,后3位设置成1。

C语言从入门到精通之【数据类型和关键字】_第2张图片

浮点数

浮点数与数学中实数的概念差不多,在一个值后面加上一个小数点,该值就成为一个浮点值。3.16E7 表示3.16×10^7,这里关键要理解浮点数和整数的储存方案不同。计算机把浮点数分成小数部分指数部分来表示,而且分开储存这两部分。浮点数通常只是实际值的近似值。例如,7.0可能被储存为浮点值6.99999。

C语言从入门到精通之【数据类型和关键字】_第3张图片

int类型

这是最常用的变量类型之一,int类型是有符号整型,即int类型的值必须是整数,可以是正整数、负整
数或零。

声明方式

int erns; int hogs, cows, goats;

初始化

初始化(initialize)变量就是为变量赋一个初始值。在C语言中,初始化可以直接在声明中完成。只需在变量名后面加上赋值运算符(=)和待赋给变量的值即可。

int hogs = 21; int cows = 32, goats = 14; int dogs, cats = 94; /* 有效,但是这种格式很糟糕,这种写法很容易让人误认为dogs也被初始化为94,所以最好不要把初始化的变量和未初始化的变量放在同一条声明中。 */

声明为变量创建和标记存储空间,并为其指定初始值。

C语言从入门到精通之【数据类型和关键字】_第4张图片

打印int型

在使用printf函数打印变量时,int型的变量使用%d打印。%d称为转换说明,它指定了printf()应使用什么格式来显示一个值。

例如:printf(“Price is %d dollars\n”, price);

你可能感兴趣的:(C语言从入门到精通,c语言,开发语言,嵌入式,linux,驱动开发)