C - 错误:预期表达

时间:2017-03-17 18:45:38

标签: c casting

我正在观看YouTube教程,此代码在视频中,并且对他们来说效果很好。

但是当我构建/运行它时,我得到'错误:预期表达式'错误。

这是我得到它的错误消息行:

../main.c:33:12: error: expected expression
        average = float(total) / float(howMany);
                  ^

这是我关注的视频: https://www.youtube.com/watch?v=gWppLYaCICM

我找不到适合这个问题的解决方案,也没有找到合适的解决方案。

提前致谢。

1 个答案:

答案 0 :(得分:1)

average = float(total) / float(howMany);

你得到了错误的语法;它是数据类型被转换为变量进入括号内,而不是变量本身。

这样做:

average = (float)total / (float)howMany; // "float" goes in parenthesis here, not "total" or "howMany"

顺便说一句,你不需要将除数除以;即使你只将其中一个转换为浮点数,最终结果也会保存在average中作为float值,假设average的类型为float本身。

这样做:

    average = (float)total / howMany; // Here, only one of the variables involved in the mathematical operation is casted to float.

与将两个变量都转换为float相同。

祝你好运!

编辑:顺便说一下,以下C语言无效的语法在C ++中是有效

average = float(total) / float(howMany);