gpt4 book ai didi

c - 错误: called object is not a function or function pointer. my * symbol causes the error

转载 作者:行者123 更新时间:2023-12-02 11:12:52 29 4
gpt4 key购买 nike

这是我的代码,显示“错误:被调用的对象不是函数或函数指针”。我的*符号导致错误。我是使用C语言的新手,所以我仍然感到困惑。请帮我。谢谢!

#include <stdio.h>

int main(void)
{
char typeOfBeam;
float B;
float H;
float b;
float h;
float pi = 3.14159265;
float r;
float momentOfInertia;
float I = momentOfInertia;
float iBeam = ((B * H)(B * H)(B * H) - (b * h)(b * h)(b * h)) / 12;
float rectangularBeam = ((b * h)(b * h)(b * h)) / 12;
float cylindricalBeam = ((pi * r)(pi * r)(pi * r)(pi * r)) / 4;

printf("Enter type of beam: ");
scanf("%c", &typeOfBeam);
if (typeOfBeam = iBeam)
{
printf("Enter Width: ");
scanf("%f", &B);
printf("Enter Flange-Flange Inner Face Height: ");
scanf("%f", &H);
printf("Enter Web Thickness: ");
scanf("%f", &b);
printf("Enter Flange Thickness: ");
scanf("%f", &h);
printf("The answer is: %f", iBeam);
}
else if (typeOfBeam = rectangularBeam)
{
printf("Enter Web Thickness: ");
scanf("%f", &b);
printf("Enter Flange Thickness: ");
scanf("%f", &h);
printf("The answer is: %f", rectangularBeam);
}
else if (typeOfBeam = cylindricalBeam)
{
printf("Enter Radius: ");
scanf("%f", &r);
printf("The answer is: %f", cylindricalBeam);
}
else
printf("Invalid input.");
return 0;
}

最佳答案

关于;

float pi = 3.14159265; 
这试图从 float文字中分配一个 double。写得更好:
float pi = 3.14159265f; 
注意尾随的'f'声明文字为 float关于:
if (typeOfBeam = iBeam) 
这是由于使用了 =而导致的分配。建议:
if (typeOfBeam == iBeam) 
注意==这是一个比较
关于;
float iBeam = ((B * H)(B * H)(B * H) - (b * h)(b * h)(b * h)) / 12; 
if (typeOfBeam = iBeam) 
iBeam不能同时是 charfloat存在相同的注意事项: rectangularBeamcylindricalBeam关于:
float I = momentOfInertia;
变量: momentOfInertia尚未初始化为“已知”值。因此,此语句导致未定义行为。
关于:
float iBeam = ((B * H)(B * H)(B * H) - (b * h)(b * h)(b * h)) / 12;
float rectangularBeam = ((b * h)(b * h)(b * h)) / 12;
float cylindricalBeam = ((pi * r)(pi * r)(pi * r)(pi * r)) / 4;
由于变量: B , H , 'bh未初始化为“已知”值,因此这些语句导致未定义行为。请记住,执行是以“线性”方式执行的,因此,在变量设置为“已知”值之前,不得使用变量的内容。
关于 412:语句正在使用 float值,因此文字也应该是 float。建议将文字写成: 4.0f12.0f
调用任何 scanf()系列函数时,请始终检查返回的值(而不是参数值)以确保操作成功。 (用户有很多方法可以导致此功能失败。)
注意: scanf()系列函数返回成功的 input format conversion说明符(或EOF)的数量。由于当前代码中对 scanf()的所有调用都恰好具有1个 input format conversion指定符,因此,除1以外的任何返回值都表示发生了错误。

关于c - 错误: called object is not a function or function pointer. my * symbol causes the error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63753635/

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