1. C语言中的数据类型转换
C语言中,可以进行数据类型转换。有以下两种数据类型转换:
- 强制类型数据转换
- 隐式类型数据转换
如下图:
2. 强制类型转换
强制类型转换的语法为:
- (Type)var_name; //对某一个变量名进行强制转换
- (Type)value; // 对某一个值进行强制转换
强制类型转换的结果为:
-
目标类型能够容纳目标值:结果不变
-
目标类型不能容纳目标值:结果将产生截断
注意: 不是所有的强制类型转换都能成功。当不能进行强制类型转换的时候,编译器将产生错误信息
实验分析:
#include <stdio.h>
struct TS{
int i;
int j;
};
struct TS ts;
int main(){
short s = 0x1122;
char c = (char)s;
int i = (int)s;
int j = (int)3.1415;
unsigned int p = (unsigned int)&ts;
//long l = (long)ts;