C语言 基本数据类型

来源:互联网 发布:redis可视化工具 知乎 编辑:程序博客网 时间:2024/05/29 16:15

学C语言,要先了解基本数据类型的取值范围、有符号类型和无符号类型的区别等等。新手,大神勿喷,嘻嘻!!我就把自己学习过程中遇到的一些问题分享出来。


1.整型

1.1 int-整型

类型说明符为int,在内存中占4个字节(有的则是两个字节,不同的编译器系统中有差异),32bit,取值范围 - 2147483648 ~ 2147483647【-2^31 ~ 2^31-1】,占位符 %d

1.2 unsigned int-无符号整型

类型说明符为 unsigned int(unsigned),跟int 不同的是取值范围 - 2147483648 ~ 2147483647【0 ~ 2^32-1】,占位符 %u

    1.3 short int (short)-短整型

类型说明符为 short int或是int,在内存中占2个字节,16bit,取值范围是 - 32768 ~ 32767【-2^15 ~ 2^15-1】,占位符 %hd

1.4 long int (long)-长整型

类型说明符为long int或是long,在内存中占4个字节,32bit,取值范围是- 2147483648 ~ 2147483647【-2^31 ~ 2^31-1】,占位符 %ld

1.5 long long int (long long )

类型说明符为long long int或是long long,在内存中占8个字节,64bit,取值范围是-9223372036854775808 ~ 9223372036854775807【-2^63 ~ 2^63-1】,占位符 %lld

注:(1)如果这些搞不懂也可以用sizeof测一下。

(2)64位整型的定义方式有long long和__int64两种。而输出到标准输出方式有printf(“%lld”,a),printf(“%I64d”,a),和cout << a三种方式。如果想了解更多的关于long long int 和 _int64 的区别,可以看看这几个博客,写的666

http://blog.csdn.net/shiwei408/article/details/7463476 http://blog.csdn.net/yingevil/article/details/6690863

2.浮点型

浮点数有两种表现形式,一种是十进制小数形式(必须有小数点),另一种是指数形式(字母e(或E)之前必须有数字,且e后面的指数必须为整数,E或e不区分大小写)

0.123 、 123.  、123.0  、0.0 都是十进制小数形式。一个浮点数可以有多种指数表示形式。例如123.456e0 、 12.3456e1

 、 1.23456e2 、 0.123456e3 、 0.0123456e4 、 0.00123456e5等。其中的1.23456e2称为“规范化的指数形式”。即在字母

e(或E)之前的小数部分中,小数点左边应有一位(且只能有一位)非零的数字。例如2.3478e2 、 3.099E5 、 6.46832E12都属于

规范化的指数形式,而12.908e10 、 0.4578E3 、 756e0则不属于规范化的指数形式。一个浮点数在用指数形式输出时,是规范

化的指数形式输出的。例如。若指定将实数5689.65按指数形式输出。输出的形式是5.68965e+003,而不会是0.568965e+004或 56.8965e+002

2.1 float-单精度

类型说明符为float,一般占4个字节,32bit,有效数字6~7位,

2.2 double-双精度

  类型说明符为double,一般占8个字节,64bit,有效数字15~16位

2.3 long double-长双精度

  类型说明符为double,一般占16个字节,128bit,有效数字18~19位

3.字符型-char
字符型数据是用单引号括起来的一个字符。例如'a'、'b'、'='、'+'、'?'都是合法的字符

在C语言中,字符型数据有以下特点:
  • 字符型数据只能用单引号括起来,不能用双引号或其它括号。
  • 字符型数据只能是单个字符,不能是字符串。
  • 字符可以是字符集中任意字符。但数字被定义为字符型之后就不能参与数值运算。如'5'和5 是不同的。'5'是字符型数据,不能参与运算。



原创粉丝点击