这个答案有点问题的,在传统的C里面这句是错的,应该写成
c=(int)(a+b);
就是强制类型转换要括号
但是C99也就是现在的C语言标准里面,这个是对的。
c
=
int(a
+
b);
c定义了吗?
如果定义了,就没有错
而且c是一个int
,
也可以写成
c
=
(int
)(a
+
b)
c++中代表
把a
+
b的值强转为int类型
赋值给c;
对C是错的,对C++是对的。
以C++类OBJECT的观点来看:以a+b为参数,调用复制构造函数int(int)构造一个整数对像,然后再将这个整数对像的值通过赋值给c。
试下强制转换:
c=(int)(a+b)