C语言基本数据类型及转换规则
来源:互联网 发布:php类与对象 编辑:程序博客网 时间:2024/06/01 10:32
C语言的基本数据类型;有点奇怪的是为什么float和double不用signed/unsigned修饰。
符号属性
长度属性
基本型
所占位数
取值范围
输入符举例
输出符举例
--
--
char
8
-2^7 ~ 2^7-1
%c
%c、%d、%u
signed
--
char
8
-2^7 ~ 2^7-1
%c
%c、%d、%u
unsigned
--
char
8
0 ~ 2^8-1
%c
%c、%d、%u
[signed]
short
[int]
16
-2^15 ~ 2^15-1
%hd
unsigned
short
[int]
16
0 ~ 2^16-1
%hu、%ho、%hx
[signed]
--
int
32
-2^31 ~ 2^31-1
%d
unsigned
--
int
32
0 ~ 2^32-1
%u、%o、%x
[signed]
long
[int]
32
-2^31 ~ 2^31-1
%ld
unsigned
long
[int]
32
0 ~ 2^32-1
%lu、%lo、%lx
[signed]
long long
[int]
64
-2^63 ~ 2^63-1
%I64d
unsigned
long long
[int]
64
0 ~ 2^64-1
%I64u、%I64o、%I64x
--
--
float
32
+/- 3.40282e+038
%f、%e、%g
--
--
double
64
+/- 1.79769e+308
%lf、%le、%lg %f、%e、%g
--
long
double
96
+/- 1.79769e+308
%Lf、%Le、%Lg
基本类型转换有以下规则:
1. 当有符号数与无符号数同类型进行运算时,会自动转化为无符号数进行运算;此时负数会用它的补码进行运算。
2. 当不同类型数据进行运算时,会自动转换为高类型,具体转换规则如下。
(为防止精度损失,类型总是被提升为较高的类型。)
3. 赋值时:等号右边表达式的值的类型自动隐式地转换为左边变量的类型,并赋值给它;高类型向低类型赋值时,精度丢失,长度变短。
4. 函数调用时:将实参的值传递给形参,系统首先会自动隐式地把实参的值的类型转换为形参的类型,然后再赋值给形参。
5. 函数有返回值时:系统首先会自动隐式地将返回表达式的值的类型转换为函数的返回类型,然后再赋值给调用函数返回。
- C语言基本数据类型及转换规则
- 关于基本数据类型转换规则
- C语言中不同数据类型间混合运算的转换规则
- C语言中不同数据类型间混合运算的转换规则
- java基本数据类型自动转换规则
- C语言自动转换规则
- C语言类型转换规则
- C语言类型转换规则
- c语言基本数据类型及表达式
- C语言的基本数据类型及数据类型转换
- c语言-数据类型-基本数据类型
- C语言基本数据类型
- c语言基本数据类型
- C语言--基本数据类型
- C语言 -- 基本数据类型
- C语言基本数据类型
- C语言基本数据类型
- c语言基本数据类型
- Hibernate继承映射
- 7款SEO相关的iPad应用程序
- 工作问题积累(十六)动态改变网页中的内容,向网页中添加文本
- struts2中的标签iterator使用
- 关于语音识别
- C语言基本数据类型及转换规则
- N皇后问题(hdu2553)
- makefile教程(7)
- 《情人》第一节
- LINUX CENTOS FTP添加用户
- InitcallMechanism/HowItWorks
- 宝马宣布国产3系5系即将发布
- makefile教程(8)
- makefile教程(9)