程序C语言中基本数据类型(字符、整数、长整数、浮点)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序C语言中基本数据类型(字符、整数、长整数、浮点)相关的知识,希望对你有一定的参考价值。
C语言
程序语言中基本数据类型(字符、整数、长整数、浮点);
本章主要介绍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 参考技术A 也不知道你到底要问什么啊:
字符型 char
整型 int
长整数型 long(int)
浮点型 float 参考技术B 字符 char
整数 int
长整数 long
浮点 float本回答被提问者采纳 参考技术C char
int
longint
float
网易云课堂_C语言程序设计进阶_第一周:数据类型:整数类型浮点类型枚举类型
C语言程序设计进阶_第一周:数据类型:整数类型、浮点类型、枚举类型
1.0数据类型
1.1整数类型
1.2浮点类型
1.3逻辑类型
1.4类型转换和条件运算
1.0数据类型
1 整数
char(%c), short, int(%d), long(%ld), long long(C99)
2 浮点数
float(%f), double(%lf), long double(C99)
3 逻辑
bool(C99)
4 指针
5 自定义类型
所表达的数的范围:char<short<int<float<double
sizeof是静态运算符,它的结果在编译时刻就决定了
不要在sizeof的括号里做运算,这些运算不会做的
1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 5 main() 6 { 7 int a = 6; 8 9 printf("sizeof(int)=%d\n", sizeof(int)); 10 11 printf("sizeof(a)=%d\n", sizeof(a++));//sizeof是静态运算符,它的结果在编译时刻就决定了 12 //不要在sizeof的括号里做运算,这些运算不会做的 13 14 printf("a=%d\n", a);//仍然是6 15 16 printf("sizeof(a)=%d\n", sizeof(a + 1.0));//8,变成double 17 18 printf("a=%d\n", a);//仍然是6 19 20 system("pause"); 21 }
1.1整数类型
整数
char:1字节,8比特:-128~127
short:2字节:-32768~32767
int:取决于编译器CPU,通常的意义是1个字
long:取决于编译器CPU,通常的意义是1个字
long long:8字节
1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 5 main() 6 { 7 printf("sizeof(char)=%d\n", sizeof(char)); 8 9 printf("sizeof(short)=%d\n", sizeof(short)); 10 11 printf("sizeof(int)=%d\n", sizeof(int)); 12 13 printf("sizeof(long)=%d\n", sizeof(long)); 14 15 printf("sizeof(long long)=%d\n", sizeof(long long)); 16 17 system("pause"); 18 }
sizeof(char)=1
sizeof(short)=2
sizeof(int)=4
sizeof(long)=4
sizeof(long long)=8
请按任意键继续. . .
整数的范围
1 #define _CRT_SECURE_NO_WARNINGS 2 3 #include<stdio.h> 4 #include<limits.h> 5 6 main() 7 { 8 char c = 255; 9 int i = 255; 10 11 printf("c=%d,i=%d\n", c, i);//char超出范围,所以显示-1 12 13 printf("%d,%d\n", CHAR_MAX, CHAR_MIN);//127 -128 14 15 system("pause"); 16 }
补码
0000 0001(1)+1111 1111(-1)=(1)0000 0000
1111 1111被当作纯二进制看待时,是255,被当作补码看待时是-1
同理,对于-a,其补码就是0-a,实际是2^n-a,n是这种类型的位数
1.2浮点类型
1.3逻辑类型
1.4类型转换和条件运算
以上是关于程序C语言中基本数据类型(字符、整数、长整数、浮点)的主要内容,如果未能解决你的问题,请参考以下文章
网易云课堂_C语言程序设计进阶_第一周:数据类型:整数类型浮点类型枚举类型