Chinaunix首页 | 论坛 | 博客
  • 博客访问: 155363
  • 博文数量: 116
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 20
  • 用 户 组: 普通用户
  • 注册时间: 2017-08-21 15:04
文章分类

全部博文(116)

文章存档

2014年(1)

2013年(13)

2012年(27)

2011年(49)

2010年(26)

分类: C/C++

2011-08-09 21:33:28

所谓数据类型是按被说明量的性质,表示形式,占据存储空间的多少,构造特点来划分的。在C语言中,数据类型可分为:基本数据类型,构造数据类型,指针类型,空类型四大类

基本数据类型

     最主要的特点是,其值不可以再分解为其它类型;在中,只有4种基本数据类型:

  1. int           整型
  2. char        字符型
  3. float        单精度型
  4. double    双精度型

类型限定符

  1. short,long 用于限定整数类型,如:short int n;long int m;在此类变量声明中,int可以省略:short n ;long m;引入这两个限定符的目的是为了提供不同长度的整数。在不同的软硬件环境下,int,short,long的长度可能不一样,但可以确定的是16(位)<=short<=int<=long, long>=32(位)
  2. signed,unsigned用于限定char或int。分别表示有符号char/int和无符号char/int。
  3. long还可以用于限定double(C99标准),其大小也和实现有关
  4. C99标准中引进了long long int

常量和变量

对于基本数据类型量,按其取值是否可改变又分为常量和变量两种。在程序执行过程中,其值不发生改变的量称为常量,取值可变的量称为变量。在程序中,常量是可以不经说明而直接引用的,而变量则必须先说明后使用。

变量的长度(VC6环境下)

  • char      8 (bit)
  • short     16
  • int         32
  • long      32
  • float      32
  • double   64

变量的范围(VC6环境下)

  • signed char       -128~127
  • unsigned char    0~255
  • signed short      -32768~32767
  • unsigned short    0~0xffff
  • signed int          (-2147483647 - 1)~2147483647
  • unsigned int       0~0xffffffff
  • signed long        (-2147483647L - 1)~2147483647
  • unsigned long     0~0xffffffffUL
  • float                 1.175494351e-38F   /* min positive value */  
                            3.402823466e+38F  /* max value */ 
  • double              3.3621031431120935063e-4932L   /* min positive value */
                            1.189731495357231765e+4932L    /* max value */

整型常量 整型常量就是整常数。在C语言中,常用的整常数有八进制、十六进制和十进制三种

  1. 前缀:用来区分各种进制数的。八进制整型常数的前缀为0;十六进制整型常数的前缀为0X或0x;十进制常数没有前缀
  2. 后缀:用来限定数据类型。长整型数用后缀“L”或“l”来表示的;整型常数的无符号数的后缀为“U”或“u”。
  3. 前缀,后缀可同时使用以表示各种类型的数。如0XA5Lu表示十六进制无符号长整数A5,其十进制为165

实型常量 实型常量也称为实数或者浮点数。在C语言中,实数只采用十进制。它有二种形式:十进制数形式指数形式

  1. 十进制数形式由数码0~ 9和小数点组成。例如:0.0,.11,123.,-36.8230等均为合法的实数。
  2. 指数形式由十进制数,加阶码标志“e”或“E”以及阶码(只能为整数,可以带符号)组成。其一般形式为a E n (a为十进制数,n为十进制整数)其值为 a*10,n 如: 2.1E5 , 3.7E-2 , -2.8E-2
  3. 后缀为“f”或“F”即表示该数为浮点数。如356f和356.是等价的。

字符常量 字符常量是用单引号括起来的一个字符

  1. 字符常量只能用单引号括起来,不能用双引号或其它括号
  2. 字符常量只能是单个字符,不能是字符串
  3. 字符可以是字符集中任意字符

转义字符 转义字符也是一种特殊的字符常量。转义字符以反斜线"\"开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。常用的转义字符及其含义
\n         回车换行
\t         横向跳到下一制表位置
\v         竖向跳格
\b         退格
\r         回车
\f         走纸换页
\\         反斜线符"\"
\'         单引号符
\a         鸣铃
\ddd        1~3位八进制数所代表的字符
\xhh        1~2位十六进制数所代表的字符
广义地讲,C语言字符集中的任何一个字符均可用转义字符来表示。

字符串常量 由一对双引号括起的字符序列,字符串常量和字符常量的区别:

  1. 字符常量由单引号括起来,字符串常量由双引号括起来
  2. 字符常量只能是单个字符,字符串常量则可以含一个或多个字符
  3. 可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变量
  4. 字符常量占一个字节的内存空间。字符串常量占的内存字节数等于字符串中字节数加1。增加的一个字节中存放字符"\0"(ASCII码为0)。这是字符串结束的标志

阅读(3085) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~