gpt4 book ai didi

c - 函数的隐式声明,预期为 ‘;’ 、 ‘,’ 或 ‘)’

转载 作者:太空宇宙 更新时间:2023-11-04 06:52:35 25 4
gpt4 key购买 nike

编译器给出如下所示的错误。据我所知,常量以及我的函数调用都已正确声明。该程序计算三角形的面积和周长,并使用 5 个不同的函数。任何帮助将不胜感激。

 program05.c:16:22: error: expected ‘;’, ‘,’ or ‘)’ before 'A'
#define SIDE_1_LABEL 'A'
^
program05.c:20:25: note: in expansion of macro ‘SIDE_1_LABEL’
float getUserValue(char SIDE_1_LABEL, char SIDE_2_LABEL);
^
program05.c: In function ‘main’:


#include <stdio.h>
#include <math.h>

#define SIDE_1_LABEL 'A'
#define SIDE_2_LABEL 'B'

void printInstructions();
float getUserValue(char SIDE_1_LABEL, char SIDE_2_LABEL);
float calculateArea(float side1, float side2);
float calculatePerimeter(float side1, float side2);
void printResults(float side1, float side2, float area, float perimeter);

int main()
{

最佳答案

你写道:

#define SIDE_1_LABEL 'A'
#define SIDE_2_LABEL 'B'

float getUserValue(char SIDE_1_LABEL, char SIDE_2_LABEL);

这与写作完全一样:

float getUserValue(char 'A', char 'B');

这显然是无效的,因为 'A' 和 'B' 不是变量名。

如果您不知道 - 宏扩展的工作方式就好像您在宏出现的任何地方复制粘贴宏定义一样。

关于c - 函数的隐式声明,预期为 ‘;’ 、 ‘,’ 或 ‘)’,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49141061/

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