c - 'struct x' 在参数列表中声明

标签 c function struct

有人可以帮助我吗?

语言:C

int func(struct Dog A, struct Dog B); //func.h header

test=func(A,B); //main.c main

int test(struct Dog *A,struct Dog *B){

    int test=0;



    return test;
}//func.c functions

//Structs:

struct date {
int day;
int month;
int year;
};

struct Dog {
char name[50];
struct date birthdate;
int age;
}A,B;

警告:它的范围只是这个定义或声明,这可能不是你想要的

警告:“struct Dog”在参数列表内声明

我们还没有学到任何关于指针的知识,所以请提醒一下,但我认为为此你将需要这些。

最佳答案

我通常不会回答这个问题,因为它很琐碎(并且是重复的),但问题的提问者和/或评论者似乎在英语方面遇到困难,我认为带有示例的非常明确的陈述代码会有帮助。

您需要移动struct Dog的完整声明,

struct Dog {
    char name[50];
    struct date birthdate;
    int age;
};

到您称为func.h header的文件,并且您需要将其放在该文件中读取的行之前

int func(struct Dog A, struct Dog B);

这将纠正您所询问的错误。在我看来,您的代码中还有其他几个错误,但是如果没有看到您的实际完整程序,而不是一堆片段,我无法帮助您和他们在一起。

我们在查看实际的、完整的程序时大惊小怪,因为很多时候,当有人发布一堆片段时,问题出在他们没有发布的代码中,或者这取决于片段在实际程序中出现的顺序。但是您的直觉是您已经发布了太多代码!我们确实希望您减少从完整程序中发布的内容 - 但我们希望您将其保留为一个完整的程序,一个我们可以自己编译和实验的程序。理想情况下,我们想要的是尽可能短的完整程序来展示您需要帮助的问题。

关于c - 'struct x' 在参数列表中声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43921621/

相关文章:

c - 当结构体包含字符串时为其分配内存

c++ - 二叉树和传递参数

javascript - 如何在 Javascript 函数之间传递变量?

c++ - 检查一个类是否有一个有参数的函数

c++ - 在 C++ 构造函数中为结构数组分配存储空间

c - C中的结构内存布局

c - C 中函数返回的整数值

c - 关于 float 和 float ×整数的溢出题

c - 各种编译器中的编译指示 swp、ivdep、预取支持

c - sscanf 中带有字符串定界符的扫描集