C 如何修复编译器错误:预期为'='''''';asm&x27;或';属性';在'之前;{&“x27;代币”;?
我正在尝试为我的电子学课程编写一个代码,用于计算简单串联电容电抗器中的电容电抗。该代码的目的与此无关,因为问题是我做了一些非常错误的事情,需要我的C技能帮助。这是您需要的公式: 这是我的代码: (不包括标题,因为它们会导致文章的html格式错误) 我的IDE是代码块,这是我的类正在使用的 它拒绝运行,在“float xc”行的“{”token |”之前声明“| 13 | error:expected'='、'、'、'、';'、'asm'或“attribute”,在xc的定义行声明“| 6 | error:原型函数定义|中的旧式参数声明” 这个新手还有希望吗?1)你需要一个分号和原型的结尾:C 如何修复编译器错误:预期为'='''''';asm&x27;或';属性';在'之前;{&“x27;代币”;?,c,date-arithmetic,C,Date Arithmetic,我正在尝试为我的电子学课程编写一个代码,用于计算简单串联电容电抗器中的电容电抗。该代码的目的与此无关,因为问题是我做了一些非常错误的事情,需要我的C技能帮助。这是您需要的公式: 这是我的代码: (不包括标题,因为它们会导致文章的html格式错误) 我的IDE是代码块,这是我的类正在使用的 它拒绝运行,在“float xc”行的“{”token |”之前声明“| 13 | error:expected'='、'、'、'、';'、'asm'或“attribute”,在xc的定义行声明“| 6 |
float xc(浮动频率,浮动电容);
2) 变量声明没有“()”
3) 参数之间用逗号分隔:capreac=xc(f,c);
4) 参数名称应与变量名称匹配:
float xc(float frequency, float capacitance);
{
float answer;
answer = (1.0/(2.0*pi*capacitance*frequency));
...
#包括
#包括
typedef长双音;
ldouble xc(ldouble f,ldouble C){返回1/(2*M_PIl*f*C);}
int main(int argc,const char*argv[]
{
双f,C,答案;
卖出(“输入f:”);
扫描频率(“%Lf”、&f);
放入(“输入C:”);
scanf(“%Lf”、&C);
答案=xc(f,C);
printf(“Xc=%Lf\n”,答案);
返回0;
}
,因为您的代码中存在一些明显的语法错误和逻辑问题。分号被弄乱了……什么是xc(f;c;)
?删除)
和之间的分号{
在函数定义中,并将其移动到函数声明之后。除了您的pi
在小数点后第3位被关闭外,它以3.14159265358979323846开头…另外@user3386109M_pi
不是C标准的一部分,因此可能并不总是存在。请参阅我上面的注释-删除)
和{
在函数定义中。回过头来看,我甚至没有为我得到这么多的反对票而生气!为什么是双精度而不是浮点型?浮点型是相当不精确的。至少你最好使用双精度。@PSkocik:既然你是为了精确,你能修正PI的定义,使它实际上是正确的吗?有一个精确的wro有点傻是的。谢谢你的帮助。我迷路了。但是现在我来了。
float f;
float c;
float xc(float frequency, float capacitance);
{
float answer;
answer = (1.0/(2.0*pi*capacitance*frequency));
...
#include <stdio.h>
#include <math.h>
typedef long double ldouble;
ldouble xc(ldouble f, ldouble C){ return 1/(2*M_PIl*f*C);}
int main(int argc, const char *argv[])
{
ldouble f, C, answer;
puts("Enter f:");
scanf("%Lf", &f);
puts("Enter C:");
scanf("%Lf", &C);
answer = xc(f, C);
printf("Xc=%Lf\n", answer);
return 0;
}