在结构中使用C头文件和带有函数指针的源的常规方法是什么?
例如;我在头文件中声明了我的结构,并在代码文件中声明了所有函数和源代码。是否通常在源文件中声明结构并将所有函数指针分配给正确的函数?
答案 0 :(得分:5)
你说得对,结构通常放在头文件中。
通常,Header文件用于设计代码框架。实际代码在另一个文件中实现。
通常头文件将包含
1)功能原型
2)班级定义
3)结构和联合定义
4)宏
有关组织代码的更多信息,请参阅 this 。
答案 1 :(得分:3)
是的,将声明(结构和函数)放在头文件中是处理大型程序的好方法。我想你可能做得对,但我还是想给你一个建议。
因为您没有提供特定代码,所以我必须使用我的一个代码作为示例:
#ifndef _COMMAND_H
#define _COMMAND_H
struct Book
{
char isbn[14];
char name[60];
char author[20];
char publisher[20];
char date[9];
float price;
float discount;
};
typedef struct Book BOOK;
struct Node
{
struct Book book;
struct Node *prev;
struct Node *next;
};
typedef struct Node NODE;
int loadArray(BOOK *ary, int num, char * fileName);
int saveAs(BOOK *pBook, int size, char * fileName);
void showAll(BOOK *pBook, int size);
int errCmd();
int menu();
int search(BOOK *pBook, int size, char *isbn);
int sort(BOOK * pBook, int num);
int update(BOOK *pBook, int size, char * isbn);
int delete(BOOK *pBook, int* pSize, char * isbn);
int insert(BOOK *pBook, int *pSize);
int append(BOOK *pBook, int *pSize);
#endif
这是MIS的头文件(用于处理图书信息)。
我想告诉您在头文件中需要#ifndef #define #endif
,这可以确保每个头文件只会结束一次。否则,它可能会出现“重新定义”错误。
我衷心希望我的回答可以帮到你。谢谢。