当我尝试运行下面的代码时,它给出了一个错误,即“无法将类型'float'隐式转换为'int'”。不能将类型'float'隐式转换为'int'
我做了很多搜索,很遗憾,我无法找到任何帮助这样的错误。
int sum1, cols, rows;
float h, twoEnds, x;
sum1 = (h - ((cols) * x) + twoEnds))/(cols + 1);
当我尝试运行下面的代码时,它给出了一个错误,即“无法将类型'float'隐式转换为'int'”。不能将类型'float'隐式转换为'int'
我做了很多搜索,很遗憾,我无法找到任何帮助这样的错误。
int sum1, cols, rows;
float h, twoEnds, x;
sum1 = (h - ((cols) * x) + twoEnds))/(cols + 1);
的错误提出明确
不能类型“浮动”隐式转换为“廉政”
所以,你有一个float
结果是不能implictly转换为sum1
这是int
类型。尝试转换/铸造它明确:
sum1 = (int) ((h - ((cols) * x) + twoEnds))/(cols + 1));
由于h
,twoEnds
,并x
都是浮动,下面的公式将返回一个float:
sum1 = (h - ((cols) * x) + twoEnds))/(cols + 1)
您可以改变SUM1是一个浮动,或投你的方程是一个诠释像这样:
sum1 = (int)((h - ((cols) * x) + twoEnds))/(cols + 1));
'请记住,我使用C#.'那么是什么'C'和'C++'标签的原因是什么? –
转换为'int':'sum1 =(int)((h - ... /(cols + 1))' –
是的,因为没有从float到int的隐式转换 – Rahul