C语言程序设计————基本数据类型(常量)

前言:

今天不学习如何造句子(写程序),而是学习C语言中对数据的分类和具体实例。数据是计算机程序加工处理的对象。在程序中,对所有的数据都要先指定其数据结构,然后才可以使用。但C语言的数据结构是以数据的类型的形式出现的,所以我们先了解一下C语言的数据类型有哪些,如下:C语言程序设计————基本数据类型(常量)_第1张图片

在程序运行过程中,其值不能改变的量称为常量。在基本数据类型中,常量可分为:整型常量,浮点型常量,字符型常量(字符常量和字符串常量),枚举型常量和符号常量。


整型常量:

整型常量即为整常数,由一个或者多个数字组成,可带正负号。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 语言提供了一种特殊形式的字符常量,即用一个转义标识符“\”(反斜线)开头的字符序列,常用的转义字符如下。C语言程序设计————基本数据类型(常量)_第2张图片

使用转义字符时要注意:

(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

你可能感兴趣的:(c语言,开发语言,后端)