C/C++编程基础:强制类型转换与隐式类型转换

文章目录

      • 强制类型转换
      • 隐式类型转换(编译器默认进行的类型转换)

强制类型转换

转换结果:
成功转换:目标类型能够容纳目标值,结果不变
不成功转换:目标类型不能容纳目标值,结果产生截断

隐式类型转换(编译器默认进行的类型转换)

  • 从低类型到高类型的隐式类型转换是安全的
  • 高类型到低类型的转换是不安全的,会产生截断,从而产生不正确的结果

1、算术运算中,默认由低类型转换为高类型
2、赋值表达式中,默认赋值运算符“=”右边的变量转换为左边的变量类型
3、函数调用时,默认实参转换为形参的类型
4、函数返回时,函数返回值,return表达式默认转换为返回值类型

默认的隐式转换规则如下,编译器默认由低精度往高精度转换
C/C++编程基础:强制类型转换与隐式类型转换_第1张图片
例题:
一个函数定义的返回值是float,它不能在return语句中返回的值的类型是?
char
int
float
long
double
答案:以上都可以

你可能感兴趣的:(C/C++,c++,编程语言)