C++自动类型转换(隐式类型转换)

介绍四种情况中计算机自动进行类型转换:

1.在混合类型的算术表达式中

int ival = 3;

double dval = 3.1415

ival + dval; //ival 被提升为double 类型:3.0

2.用另外一种类型的表达式赋值

int *pi = NULL; // NULL(0)被转换成了int* 类型的空指针值

3.用一个表达式传递给一个函数调用

extern double sqrt(double);

sqrt(2); //2被提升为double类型: 2.0

4.从一个函数返回一个表达式

double difference(int ival1, int ival2)

{

return ival1 – ival2; //返回值被提升为double 类型.

}