a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 61|回复: 0

[C语言] C语言-基础教程-C语言的数据类型

[复制链接]
发表于 2012-7-31 21:48:08 | 显示全部楼层 |阅读模式
  C语言有五种基本数据类型:字符、整型、单精度实型、双精度实型和空类型。尽管这几种类型数据的长度和范围随处理器的类型和C语言编译程序的实现而异,但以b i t为例,整数与CPU字长相等,一个字符通常为一个字节,浮点值的确切格式则根据实现而定。对于多数微机,表2 - 1给出了五种数据的长度和范围。/ T( Z$ U5 W  l, L( T
  表中的长度和范围的取值是假定C P U的字长为1 6 b i t。* V. V( ]% }0 x9 H* r- s$ @
  C语言还提供了几种聚合类型(aggregate types),包括数组、指针、结构、共用体(联合)、位域和枚举。这些复杂类型在以后的章节中讨论。$ `! H- y* G: {0 C( `. ]
  除v o i d类型外,基本类型的前面可以有各种修饰符。修饰符用来改变基本类型的意义,以便更准确地适应各种情况的需求。修饰符如下:7 D! n" `* L/ C0 K3 D( I
  ? signed(有符号)。3 p: F# Z3 Z- R1 C9 X
  ? unsigned(无符号)。; ^$ E2 r2 w8 R4 I% \
  ? long(长型符)。
, T4 }: c! u7 b1 e- a6 l  ? short(短型符)。
* A$ n: x' e- v2 d  修饰符s i g n e d、s h o r t、l o n g和u n s i g n e d适用于字符和整数两种基本类型,而l o n g还可用于d o u b l e(注意,由于long float与d o u b l e意思相同,所以A N S I标准删除了多余的long float)。
# K  L1 G5 N( u2 S  给出所有根据A N S I标准而组合的类型、字宽和范围。切记,在计算机字长大于1 6位的系统中,short int与signed char可能不等。) l2 V- {8 ?/ S; y; Z
  *表中的长度和范围的取值是假定C P U的字长为1 6 b i t。因为整数的缺省定义是有符号数,所以s i n g e d这一用法是多余的,但仍允许使用。某些实现允许将u n s i g n e d用于浮点型,如unsigned double。但这一用法降低了程序的可移. s) r$ l- P8 m, s2 \7 e6 V5 n( p4 ]1 w
  植性,故建议一般不要采用。为了使用方便,C编译程序允许使用整型的简写形式:
7 M$ N) m! W( ]2 Y  ? short int 简写为s h o r t。( B0 M& r& d, g
  ? long int 简写为l o n g。* G; w$ r  k: n5 A8 p- ~
  ? unsigned short int 简写为unsigned short。
$ ^0 N- I4 p, ]* u' j( t  ? unsigned int 简写为u n s i g n e d。
& o" x/ F% ^; D; P: a5 B2 [" f3 C  ? unsigned long int 简写为unsigned long。' i- `( ~$ W$ i) I& m$ c% w' l
  即,i n t可缺省。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-17 12:07 , Processed in 0.539139 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表