C语⾔程序设计————基本数据类型(常量)
前⾔:
今天不学习如何造句⼦(写程序),⽽是学习C语⾔中对数据的分类和具体实例。数据是计算机程序加⼯处理的对象。在程序中,对所有的数据都要先指定其数据结构,然后才可以使⽤。但C语⾔的数据结构是以数据的类型的形式出现的,所以我们先了解⼀下C语⾔的数据类型
有哪些,如下:
在程序运⾏过程中,其值不能改变的量称为常量。在基本数据类型中,常量可分为:整型常量,浮点型常量,字符型常量(字符常量和字符串常量),枚举型常量和符号常量。
整型常量:
整型常量即为整常数,由⼀个或者多个数字组成,可带正负号。C语⾔中整型常量可以⽤⼗进制,⼋进制和⼗六进制3种形式表⽰1,⼗进制整数
由数字0~9组成,不能以0开头,没有前缀。
合法的⼗进制整数:239    -239    2390
不合法的⼗进制整数:023    23D
2,⼋进制整数
以0为前缀,其后由0~7的数字组成.
合法的⼋进制整数:015(⼗进制为13)  0101(⼗进制为65)
不合法的⼋进制整数:256(没有前缀0)    0283(不能含有⾮⼋进制数8)
3,⼗六进制整数
以0x或者0X为前缀,其后由0~9的数字a~f(或者A~F)字母组成。
合法的⼗六进制整数:0x1f(⼗进制数为31)  -0x12(⼗进制数为-18)
不合法的⼗进制整数:8C(⽆前缀)    0x3H(含有⾮⼗六进制数码H)
在长整型常量后加后缀L(或者l),⽆符号常量后加U(或者u),例如:1233L是⼀个长整型常量,          38478U是⼀个⽆符号整型常
量,456UL是⼀个⽆符号长整型常量。
注:在C程序中是根据前缀来区分各种进制数的,因此在书写常量时不要把前缀弄错,造成结果不正确。
浮点型常量:
两种表⽰的⽅法:⼗进制⼩数形式和指数形式
1,⼗进制⼩数形式
⼗进制⼩数是由数字和⼩数点组成,必须要有⼩数点。
如:1.2  .24    2.    0.0等都是合法的⼩数
2,指数形式
由⼗进制数,阶码标志“e”或“E”和阶码组成,阶码只能是整数。程序设计语言一般可分为三大类
例如:123.456可以表⽰为123.456e0 或12.3456e1  或1.23456e2 或0.123456e3等多种形式 ,其中1.23456e2被称为规范化的指数形式,即⼩数点左边部分有且只有⼀位⾮零的数字 注:e和E的前⾯必须有数字,后⾯必须是整数。例如15e2.3  e3 和 .e3都是错误形式。
字符型常量
字符型常量分为字符常量和字符串常量。
1.字符常量
字符常量⼜称为字符常数, C 语⾔中的字符常量是⽤单引号括起来的⼀个字符.
例如;'a' 、'A'、'x'、'3'和'#'等都是字符常量值.
特点:
(1)字符常量只能⽤单引号括起来,单引号只起界定作⽤,不表⽰字符本⾝。单引号中只能有⼀个字符,字符可以是字符集中的任意字
符。单引号中的字符不能是单弘号(’)和反斜线(\)
(2)每个字符常量都有⼀个整数值,就是该数的 ASCI 码值。例如,' a ’的 ASCI 码是97。
(3)字符常量区分⼤⼩写。例如 b '和' B '的 ASCI 码值分别是98、66,因此 b ’和' B 代表不同的字符常量。
(4)转义字符:除了以上形式的字符常量外,对于常⽤的但却难以⽤⼀般形式表⽰的不可显          ⽰字符, C 语⾔提供了⼀种特殊形
式的字符常量,即⽤⼀个转义标识符“\”(反斜线)开头的字符序列,常⽤的转义字符如下。
使⽤转义字符时要注意:
(1)转义字符开头的反斜线“\”并不代表⼀个反斜线字符,其含义是将反斜线后的字符或数字转换成另外的意义。
(2)转义字符仍然是⼀个字符,对应⼀个 ASCI 码值。如'\n'代表换⾏,不代表字符 n 。
(3)反斜线后的⼋进制数可以不⽤0开头。如'\101'代表字符常量'A','\134'代表字符常量'\'。
(4)反斜线后的⼗六进制数只能以⼩写字母 x 开头,不允许⽤⼤写字母 X 或 0x 开头。如‘\x41'代表字符常量 'A' 。
(5)转义字符多⽤于print( )函数中,⽽在 scanf( )函数中通常不被使⽤。
2,字符串常量
⽤⼀对双引号括起来的字符串。
例如:“a”  “china”  "123.0"
C 语⾔规定字符串常量的存储⽅式为:字符串中的每个字符以其 ASCII 码值的⼆进制形式存放在内存中,并且系统⾃动在该字符串末尾
加⼀个字符串结束标志('\0',即 ASCII 码值为0的字符,它不引起任何控制动作,也不是⼀个可显⽰的字符),以便系统据此判断字符串是否结束。例如,字符串“ system ”,实际在内存中存储如下所⽰:
它占内存不是6个字节,⽽是7个字节,最后⼀个字节存储的是'\0',在输出该字节串时'\0'并不输出,仅作为处理时的结束标志。注意,在输⼊字符串时不必加'\0', '\0'字符是系饻⾃动加上的。
枚举类型
枚举类型涉及到结构体的知识,所以在这⾥我进⾏举例了解,不深⼊讲解
举例:
enum Sex
{
MALE,
FEMALE,
SECRET
};//括号中的MALE,FEMALE,SECRET是枚举常量
最后⽤编译器依次将MALE,FEMALE,SECRET的值输出时,它们分别是0,1,2
注:枚举常量的默认是从0开始,依次向下递增1的
符号常量:
在 C 语⾔中,可以⽤⼀个标识符表⽰⼀个常量,称之为符号常量,即标识形式的常量。符号常量是⼀种特殊的常量,其值和类型是通过符号常量的定义决定的。符号常量在使⽤之前必须定义,其
﹂般形式:
# define  标识符  常量
# define 是⼀条预处理命令,其功能是把命令格式中的标识符定义为其后的常量值。
注:符号常量的定义在main()在前,在main()⾥不管运算多少回,它依然是最开始赋予的常量。
举例
#define  A  3.14
int main()
{
int r=2;
float s,l;
l=2*A*r;
print("l=%f",l);
}
//运⾏结果为12.560000

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。