请教C语言基本类型的问题?

在C语言里的,基本类型:int,char,short,long,float,double……等等,这些的类型,怎么用,什么时候用,什么情况下用

下面是我从我的讲义上复制下来的,你看看吧,应该能有些帮助。 第2章 数据类型、运算符与表达式 本章主要介绍C语言的各种数据类型、运算符和表达式。 2.1 C语言的数据类型 C语言的数据类型具体分类如下: 基本类型:分为整型、实型(又称浮点型)、字符型和枚举型四种。 构造类型:分为数组类型、结构类型和共用类型三种。 指针类型 空类型 2.2 常量和变量 2.2.1 常量 1、常量的概念:在程序运行过程中,其值不能被改变的量称为常量 2、 常量的分类: 整型常量 实型常量 字符常量 符号常量 3、常量的类型,可通过书写形式来判别。 2.2.2 变量 1、变量的概念:在程序运行过程中,其值可以被改变的量称为变量 2、变量名:每个变量都必须有一个名字——变量名, 变量命名遵循标识符命名规则 3、变量值:在程序运行过程中,变量值存储在内存中。在程序中, 通过变量名来引用变量的值 4、标识符命名规则: 只能由字母、数字和下划线组成,且以字母或下划线开头 有效长度:随系统而异,但至少前8个字符有效。如果超长, 则超长部分被舍弃 C语言的关键字不能用作变量名 注意:C语言对英文字母的大小敏感,即同一字母的大小写, 被认为是两个不同的字符。 习惯上,变量名和函数名中的英文字母用小写,以增加可读性。 5、变量的定义与初始化 在C语言中,要求对所有用到的变量,必须先定义、后使用; 且称在定义变量的同时进行赋初值的操作为变量初始化。 (1)变量定义的一般格式 数据类型 变量名[, 变量名2……]; 例如,float radius, length, area; (2)变量初始化的一般格式 数据类型 变量名[=初值][, 变量名2[=初值2]……]; 例如,float radius=2.5, length, area; 2.3 整型数据 2.3.1 整型变量 1、分类 根据占用内存字节数的不同,整型变量又分为4类: (1)基本整型(类型关键字为int)。 (2)短整型(类型关键字为short [int])。 (3)长整型(类型关键字为long [int])。 (4)无符号整型。无符号型又分为无符号基本整型( unsigned [int])、无符号短整型(unsigned short)和无符号长整型(unsigned long)三种,只能用来存储无符号整数。 2、占用内存字节数与值域 上述各类型整型变量占用的内存字节数,随系统而异。 在16位操作系统中,一般用2字节表示一个int型变量, 且long型(4字节)≥int型(2字节)≥short型( 2字节)。 显然,不同类型的整型变量,其值域不同。占用内存字节数为n的( 有符号)整型变量,其值域为:-2n*8-1~(2n*8-1- 1);无符号整型变量的值域为:0~(2n*8-1)。 例如,PC机中的一个int型变量,其值域为-22*8-1~( 22*8-1-1),即-32768~32767; 一个unsigned型变量的值域为:0~(22*8-1), 即0~65535。 第2章 数据类型、运算符与表达式 本章主要介绍C语言的各种数据类型、运算符和表达式。 2.1 C语言的数据类型 C语言的数据类型具体分类如下: 基本类型:分为整型、实型(又称浮点型)、字符型和枚举型四种。 构造类型:分为数组类型、结构类型和共用类型三种。 指针类型 空类型 2.2 常量和变量 2.2.1 常量 1、常量的概念:在程序运行过程中,其值不能被改变的量称为常量 2、 常量的分类: 整型常量 实型常量 字符常量 符号常量 3、常量的类型,可通过书写形式来判别。 2.2.2 变量 1、变量的概念:在程序运行过程中,其值可以被改变的量称为变量 2、变量名:每个变量都必须有一个名字——变量名, 变量命名遵循标识符命名规则 3、变量值:在程序运行过程中,变量值存储在内存中。在程序中, 通过变量名来引用变量的值 4、标识符命名规则: 只能由字母、数字和下划线组成,且以字母或下划线开头 有效长度:随系统而异,但至少前8个字符有效。如果超长, 则超长部分被舍弃 C语言的关键字不能用作变量名 注意:C语言对英文字母的大小敏感,即同一字母的大小写, 被认为是两个不同的字符。 习惯上,变量名和函数名中的英文字母用小写,以增加可读性。 5、变量的定义与初始化 在C语言中,要求对所有用到的变量,必须先定义、后使用; 且称在定义变量的同时进行赋初值的操作为变量初始化。 (1)变量定义的一般格式 数据类型 变量名[, 变量名2……]; 例如,float radius, length, area; (2)变量初始化的一般格式 数据类型 变量名[=初值][, 变量名2[=初值2]……]; 例如,float radius=2.5, length, area; 2.3 整型数据 2.3.1 整型变量 1、分类 根据占用内存字节数的不同,整型变量又分为4类: (1)基本整型(类型关键字为int)。 (2)短整型(类型关键字为short [int])。 (3)长整型(类型关键字为long [int])。 (4)无符号整型。无符号型又分为无符号基本整型( unsigned [int])、无符号短整型(unsigned short)和无符号长整型(unsigned long)三种,只能用来存储无符号整数。 2、占用内存字节数与值域 上述各类型整型变量占用的内存字节数,随系统而异。 在16位操作系统中,一般用2字节表示一个int型变量, 且long型(4字节)≥int型(2字节)≥short型( 2字节)。 显然,不同类型的整型变量,其值域不同。占用内存字节数为n的( 有符号)整型变量,其值域为:-2n*8-1~(2n*8-1- 1);无符号整型变量的值域为:0~(2n*8-1)。 例如,PC机中的一个int型变量,其值域为-22*8-1~( 22*8-1-1),即-32768~32767; 一个unsigned型变量的值域为:0~(22*8-1), 即0~65535。 实型数据 2.4.1 实型变量 C语言的实型变量,分为两种: (1)单精度型:类型关键字为float,一般占4字节( 32位)、提供7位有效数字。 (2)双精度型:类型关键字为double,一般占8个字节、 提供15~16位有效数字。 2.4.2 实型常量 1、表示形式 实型常量即实数,在C语言中又称浮点数,其值有两种表达形式: (1)十进制形式:例如3.14、9.8。 (2)指数形式:<尾数>E(e)<整型指数>。例如3.0E+ 5等。 2、关于类型 实型常量不分float型和double型。一个实型常量, 可以赋给一个实型变量(float型或double型)。 2.5 字符型数据 2.5.1 字符常量 1、字符常量的定义 用一对单引号括起来的单个字符,称为字符常量。 例如,‘A’、‘1’、‘+’等。 2、转义字符 C语言还允许使用一种特殊形式的字符常量,就是以反斜杠“\ ”开头的转义字符。 注意:如果反斜杠或单引号本身作为字符常量,必须使用转义字符: ‘\\’、‘\’‘。 [案例2.1] 用转义字符输出可打印字符和不可打印字符。 main() { printf(“\x4F\x4B\x21\n”); /* 等价于printf(“OK!\n”); */ printf(“\x15 \xAB\n”); } 程序运行结果如下: OK! 2.5.2 字符变量 字符变量的类型关键字为char,一般占用1字节内存单元。 1.变量值的存储 字符变量用来存储字符常量。 将一个字符常量存储到一个字符变量中, 实际上是将该字符的ASCII码值(无符号整数) 存储到内存单元中。 例如, char ch1, ch2; /*定义两个字符变量:ch1,ch2*/ ch1=’a’; ch2=’b’; /*给字符变量赋值*/ 2.特性 字符数据在内存中存储的是字符的ASCII码—— 一个无符号整数,其形式与整数的存储形式一样, 所以C语言允许字符型数据与整型数据之间通用。 (1)一个字符型数据,既可以字符形式输出, 也可以整数形式输出。 [案例2.2] 字符变量的字符形式输出和整数形式输出。 main() { char ch1,ch2; ch1='a'; ch2='b'; printf(“ch1=%c,ch2=%c\n”,ch1, ch2); printf(“ch1=%d,ch2=%d\n”,ch1, ch2); } 程序运行结果: ch1=a,ch2=b ch1=97,ch2=98 (2)允许对字符数据进行算术运算, 此时就是对它们的ASCII码值进行算术运算。 [案例2.3] 字符数据的算术运算。 main() { char ch1,ch2; ch1=‘a’; ch2=‘B’; printf(“ch1=%c,ch2=%c\n”,ch1- 32,ch2+32); /*字母的大小写转换*/ /*用字符形式输出一个大于256的数值*/ printf("ch1+200=%d\n", ch1+200); printf("ch1+200=%c\n", ch1+200); printf("ch1+256=%d\n", ch1+256); printf("ch1+256=%c\n", ch1+256); } 程序运行结果: ch1=A,ch2=b ch1+200=297 ch1+200=) ch1+256=353 ch1+256=a
温馨提示:答案为网友推荐,仅供参考