假设我们有以下结构定义如下:
struct
{
int month;
int day;
int year;
} date;
我可以以某种方式实现一个函数,该函数将与日期相同类型的结构作为参数,即使它没有明确命名吗?换句话说,我能够对randomFunction (date)
之类的随机函数进行函数调用吗?在这种情况下,该函数的标题如何显示,因为date
的结构类型没有名称?
提前致谢:)
答案 0 :(得分:1)
您可以定义日期的结构类型,并使用date
typedef struct date{
int month;
int day;
int year;
} date;
答案 1 :(得分:0)
有间接的方法(例如,您可以传递指向该类型对象的void*
指针,然后以某种方式访问该结构中的结构成员功能)。
使用, ...
声明的可变参数函数不起作用,因为在调用va_arg()
时仍需要指定类型的名称。
不,没有直接的方法可以做到这一点。函数参数必须是某种命名类型。坦率地说,没有任何间接的方式值得做。
如果要将某个struct
类型的参数传递给函数,只需为该类型命名即可。