您的位置:首页 > 编程语言 > C语言/C++

C语言总结之基本数据类型

2013-11-15 16:44 218 查看


        在C语言中,只有四种基本数据类型——整型,浮点型,指针和聚合类型(如数组和结构等)。

1.整型(integer)

        

整型家族包括字符、短整型、整型、和长整型。可以分为有符号(signed)和无符号(unsigned)两个版本。其中我经常用到的是字符(char)和整型(int)。

        标题中的整型(integer)指的是一种数据类型,integer的中文意思是整数的意思,即只能保存整数。

        整型家族中的整型(int)指的是C语言的关键字。

        变量的最小范围
类型最小范围
signed char-128~127
unsigned char0~255
signed int-32767~32768
unsigned int0~65535
        在C语言中。char是signed
char还是unsigned char,这要取决于编译器,一般情况下char默认为是signed char。

1.1 整型常量(literal)

        整型常量也可以称作整型字面值。
        整型常量可以用二进制、八进制、十进制和十六进制来赋值。其中,二进制用0b开头,八进制用0开头,默认情况下是十进制,十六进制用0x开头。例如,表示十进制数字16,二进制0b11111111,八进制020,十六进制0xFF。十六进制中的英文字母可以大写也可以小写。
        在整型常量后面添加字符L或l(字母l),可以使这个整数倍解释为long整型值,字符U或u可以指定为无符号(unsigned)整型值。

        字符常量。字符常量是用一个单引号包围起来的单个字符(或字符转义序列或三字母词),它的类型总是int。例如
'M' 、'\n'。

1.2 枚举类型(enumerated)

        枚举类型就是指它的值为符号常量而不是字面值的类型。

2.浮点类型

        浮点数家族包括float、double和long double类型。

        ANSI标准中规定了一个最小范围:所有浮点类型至少能够容纳从10-37到1037之间的任何值。

        同样,浮点常量在默认情况下都是double类型,可以在后面跟一个L或l表示它是一个long double类型,或者跟一个F或f表示float类型。

3.指针

        变量的值存储与计算机的内存中,每一个变量都占据一个特定的位置。

        指针变量就是一个其值为另外一个(一些)内存地址的变量。

3.1 指针常量(pointer constant)

        把指针常量表达为数值常量的形式几乎没有用处,所以C语言内部并没有特地定义这个概念。

3.2 字符串常量(string literal)

        字符串是一串NUL字节结尾的零个或多个字符。

        字符串通常存储在字符数组中,这也是C语言没有显式的字符串类型的原因。

        由于NUL字节是用于终结字符串的,所以在字符串内部中不能有NUL字节。之所以选择NUL作为字符串的终止符,是因为它不是一个可以打印的字符。

参考资料:

Reek K A, 徐波. C 和指针[M]. 人民邮电出版社, 2008.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: