C でマクロを使用する際に問題があります。構造体メンバーの名前にアクセスする必要があります。そして、このリンクHEREから C++ で解決策を見つけました!!! . 今、私はそれを C に翻訳しようとしていますが、関数を構造体にすることはできません。これは私ができる唯一のことです:
typedef struct ms ms;
struct ms{
#define SM(y, z) z y;
SM(author, char*);
SM(title, char*);
SM(year, int);
void (*set)(char* fname, char* val);
#undef SM
};
次に、関数:
void set(char* fname, char* val)
{
//code
}
しかし、前に述べたリンクと同じ解決策を得るには、関数内のコードをどのように入力すればよいかわかりません。助けが必要です:(誰か?