错误:预计&#34 ;;"

时间:2013-04-11 09:37:51

标签: compiler-errors

我是初学者,正在尝试使用VS 2012 Ultimate学习C编程。

我刚刚学会了如何制作一个摄氏度到华氏度的"转换器因此我决定将此进一步纳入"球体的体积"计算器。这就是我输入的内容:

#include <stdio.h>
#include <string.h>

char line[100]; /*Line input by the user*/
char line_2[100]; /*Second line input by the user*/
float radius; /*Value of the radius input by the user*/
float pi; /*Value of the pi input by the user*/
float volume /*Result of the calculation*/
float result_volume; /*Result of the second calculation*/
float result_volume2; /*Result of the third calculation*/
float result_volume3; /*Result of the fourth calculation*/

int main()
{
    printf("Please write the value of the radius: ");
    fgets(line,sizeof(line),stdin);
    sscanf(line,"%f",&radius);
    printf("Please write the value of the Pi ");
    fgets(line_2,sizeof(line_2),stdin);
    sscanf(line_2,"%f",&pi);
    volume = radius*radius*radius;
    result_volume = volume *pi;
    result_volume2 = result_volume*4;
    result_volume3 = result_volume2/3;
    printf("When the radius is %f, and the Pi, %f, then the volume of the sphere is: 
                %f\n", radius, pi, result_volume3);
    return (0);
}

当我尝试编译时,我不断收到错误:

Error: Expected a ";" on float result_volume.

我在哪里弄错了,我该如何解决这个问题?请帮忙!

2 个答案:

答案 0 :(得分:4)

在您显示的代码中,

后缺少;
float volume /*Result of the calculation*/

应该是:

float volume; /*Result of the calculation*/

注意: 当您遇到此类错误时,通常应该查看之前行发生错误的行。在您的情况下,这是上一行。

当发生在下一行到达;时,编译器只会看到问题。在那里,它意识到整个两行不会产生单个命令,并且切割应该在某处发生。但它无法分辨到哪里。因此,它在看到错误时标记错误,而不是实际发生的位置。

然而,该领域已经有了重大改进,例如,使用Clang,MAC OS X IDE Xcode能够在需要的地方准确地建议;

答案 1 :(得分:0)

float volume /*Result of the calculation*/
float result_volume; /*Result of the second calculation*/

您在;

之后忘记了分号(float volume
float volume; /*Result of the calculation*/
float result_volume; /*Result of the second calculation*/