C语言规定,不同类型的数据需要转换成同一类型后才可进行计算,在整型、实型和字符型数据之间通过类型转换便可以进行混合运算(但不是所有类型之间都可以进行转换) .
当混合不同类型的变量进行计算时,便可能会发生类型转换 .
相同类型的数据在转换时有规则可循:
字符必须先转换为整数(C语言规定字符类型数据和整型数据之间可以通用) .
short型转换为int型(同属于整型).
赋值时,一律是右部值转换为左部类型.
另外,
当整型数据和双精度数据进行运算时,C先将整型数据转换成双精度型数据,再进行运算,结果为双精度类型数据.
当字符型数据和实型数据进行运算时,C先将字符型数据转换成实型数据,然后进行计算,结果为实型数据.
示例程序, 测试环境VC6:
/* C语言数据类型转换 Data Type Conversion in C Programming Language */
#include
void main()
{
int int1 = 1;
unsigned unsigned1=2;
short short1=1;
char char1 = 'a';
long long1=1L;
float float1 = 2.0F;
double double1 = 3.0L;
printf("\n各种数据类型的数据占用的内存空间:\n");
printf("sizeof(int):%d 字节\n",sizeof(int1));
printf("size