gpt4 book ai didi

C 错误 : expected ';' , ',' 或 ')' 在 '...' token 之前

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

我有一个问题。 C 中面向对象编程的概念得到了家庭作业。我需要使用可变参数函数。但我犯了一个错误。如果你能帮助我,我将不胜感激。我是编码新手。

RastgeleKarakter.h:

#ifndef RASTGELEKARAKTER_H
#define RASTGELEKARAKTER_H
struct RASTGELEKARAKTER{
// code
};

RastgeleKarakter SKarakterOlustur(int...); // prototype
void Print(const RastgeleKarakter);
#endif

RastgeleKarakter.c:

#include "RastgeleKarakter.h"
#include "stdarg.h
RastgeleKarakter SKarakterOlustur(int... characters){
//code
}

错误:

 make
gcc -I ./include/ -o ./lib/test.o -c ./src/Test.c
In file included from ./src/Test.c:3:0:
./include/RastgeleKarakter.h:17:38: error: expected ';', ',' or ')' before '...' token
RastgeleKarakter SKarakterOlustur(int...);

我不知道有多少个参数。我想用变量函数来解决这个问题。

最佳答案

参数列表不应有类型或名称

RastgeleKarakter SKarakterOlustur(int count, ...)

{
va_list args;
va_start(args, count);
int i = va_arg(args, int);
}

使用 stdarg.h 中定义的宏头文件来访问参数列表。 further reading

如果按照您最初的减速度,您的意思是参数列表的所有成员都是整数,并且由于您无论如何都会提供计数,请考虑将其更改为 int count, int * list

关于C 错误 : expected ';' , ',' 或 ')' 在 '...' token 之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55652352/

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