C语言的数据类型小结

才疏学浅,下面的结论摘自《C+Primer+Plus+第6版》【美】Stephen Prata著
C 有多种的数据类型。基本数据类型分为两大类:整数类型和浮点数类 型。通过为类型分配的储存量以及是有符号还是无符号,区分不同的整数类 型。最小的整数类型是char,因实现不同,可以是有符号的char或无符号的 char,即unsigned char或signed char。但是,通常用char类型表示小整数时才 这样显示说明。其他整数类型有short、int、long和long long类型。C规定,后 面的类型不能小于前面的类型。上述都是有符号类型,但也可以使用 unsigned关键字创建相应的无符号类型:unsigned short、unsigned int、 unsigned long和unsigned long long。或者,在类型名前加上signed修饰符显式 表明该类型是有符号类型。最后,_Bool类型是一种无符号类型,可储存0或 1,分别代表false和true。
浮点类型有3种:float、double和C90新增的long double。后面的类型应 大于或等于前面的类型。有些实现可选择支持复数类型和虚数类型,通过关 键字_Complex和_Imaginary与浮点类型的关键字组合(如,double _Complex 类型和float _Imaginary类型)来表示这些类型。
整数可以表示为十进制、八进制或十六进制。**0前缀表示八进制数,0x 或0X前缀表示十六进制数。**例如,32、040、0x20分别以十进制、八进制、 十六进制表示同一个值。l或L前缀表明该值是long类型, ll或LL前缀表明该 值是long long类型。
在C语言中,直接表示一个字符常量的方法是:把该字符用单引号括起 来,如’Q’、‘8’和’$’。C语言的转义序列(如,’\n’)表示某些非打印字符。另 外,还可以在八进制或十六进制数前加上一个反斜杠(如,’\007’),表示 ASCII码中的一个字符。
浮点数可写成固定小数点的形式(如,9393.912)或指数形式(如, 7.38E10)。C99和C11提供了第3种指数表示法,即用十六进制数和2的幂来 表示(如,0xa.1fp10)。
printf()函数根据转换说明打印各种类型的值。转换说明最简单的形式由 一个百分号(%)和一个转换字符组成,如%d或%f。

发布了56 篇原创文章 · 获赞 18 · 访问量 3483

猜你喜欢

转载自blog.csdn.net/kangjielearning/article/details/104740353