Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 如何修复编译器错误:预期为'='''''';asm&x27;或';属性';在'之前;{&“x27;代币”;?_C_Date Arithmetic - Fatal编程技术网

C 如何修复编译器错误:预期为'='''''';asm&x27;或';属性';在'之前;{&“x27;代币”;?

C 如何修复编译器错误:预期为'='''''';asm&x27;或';属性';在'之前;{&“x27;代币”;?,c,date-arithmetic,C,Date Arithmetic,我正在尝试为我的电子学课程编写一个代码,用于计算简单串联电容电抗器中的电容电抗。该代码的目的与此无关,因为问题是我做了一些非常错误的事情,需要我的C技能帮助。这是您需要的公式: 这是我的代码: (不包括标题,因为它们会导致文章的html格式错误) 我的IDE是代码块,这是我的类正在使用的 它拒绝运行,在“float xc”行的“{”token |”之前声明“| 13 | error:expected'='、'、'、'、';'、'asm'或“attribute”,在xc的定义行声明“| 6 |

我正在尝试为我的电子学课程编写一个代码,用于计算简单串联电容电抗器中的电容电抗。该代码的目的与此无关,因为问题是我做了一些非常错误的事情,需要我的C技能帮助。这是您需要的公式:

这是我的代码: (不包括标题,因为它们会导致文章的html格式错误)

我的IDE是代码块,这是我的类正在使用的

它拒绝运行,在“float xc”行的“{”token |”之前声明“| 13 | error:expected'='、'、'、'、';'、'asm'或“attribute”,在xc的定义行声明“| 6 | error:原型函数定义|中的旧式参数声明”

这个新手还有希望吗?

1)你需要一个分号和原型的结尾:

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开头…另外@user3386109
M_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;
}