gpt4 book ai didi

c - C 中的预期标识符

转载 作者:行者123 更新时间:2023-11-30 18:30:28 25 4
gpt4 key购买 nike

我收到的错误是“在 float 之前需要标识符或‘(’。”任何帮助将不胜感激。我读过它可能与 fprod 之后的分号有关?我尝试添加括号,例如(float) fsum 和 (float) fprod,以及删除带括号和不带括号的分号。

int main (void)

{

int x, y, z, fx, fy, fz, sum, prod, float fsum, float fprod;
//The error occurs on line 9. The above is line 9
printf("\n Enter the first integer number: ");
scanf("%d", &x);
if( x<=0){
printf("\n Invalid entry. Entry must be greater than 0.");
scanf("%d",&x);
}

printf("\n Enter the second integer number: ");
scanf("%d", &y);
if( y<=0){
printf("\n Invalid entry. Entry must be greater than 0.");
scanf("%d",&y);
}

最佳答案

不能在同一个声明中声明不同类型的变量。改变

int x, y, z, fx, fy, fz, sum, prod, float fsum, float fprod;

int x, y, z, fx, fy, fz, sum, prod;
float fsum, fprod;

正如一些评论所指出的,将所有变量分组到一个声明中是不好的做法。最好根据功能或位置将它们分开。这实际上取决于您的程序,但您可以执行以下操作:

int x, y, z;
int fx, fy, fz;
int sum, prod;
float fsum, fprod;

此外,将变量初始化为一些合理的值也是一个好主意,因为它们将包含随机的未定义值,如果您在没有成功设置它们的情况下尝试使用它们,最终可能会很难发现错误。所以:

int x = 0, y = 0, z = 0; // or some other value if it makes sense
int fx = 0, fy = 0, fz = 0;
int sum = 0, prod = 0;
float fsum = 0.0, fprod = 0.0;

关于c - C 中的预期标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30877719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com