この質問に対する簡単な答えがあることを願っていますので、しばらくお待ちください。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);
TYPE を返すように createExample をコーディングするにはどうすればよいですか? 私は次のことを試しました(および他のいくつかの失敗した試み):
TYPE createExample (int val, char *desc)
{
TYPE temp;
struct Example example;
example->val = val;
strcpy(example->description, desc);
return temp = example;
}