我希望这个问题有一个简单的答案,所以请耐心等待。如果我有一个 C 头文件将 TYPE 定义为:
struct Example {
char description[EXAMPLE_DESC_SIZE];
int val;
};
typedef struct Example Example;
# ifndef TYPE
# define TYPE Example
# define TYPE_SIZE sizeof(Example)
# endif
然后在一个 .c 文件中,我有一个函数如下:
TYPE createExample (int val, char *desc) {
}
从主要称为
TYPE newEx;
char desc[EXAMPLE_DESC_SIZE], filename[50], *nlptr;
int val;
newEx = createExample(val, desc);
如何对 createExample 进行编码以使其返回 TYPE?我尝试了以下(以及其他一些不成功的尝试):
TYPE createExample (int val, char *desc)
{
TYPE temp;
struct Example example;
example->val = val;
strcpy(example->description, desc);
return temp = example;
}