我不知道这是否对你有帮助,这是我的第一篇文章...所以放轻松点。
我只是碰到了这个问题,我所做的是我补充说,操纵结构到包含该匿名结构的文件的功能。这样我可以从我的项目中的任何文件调用该函数,并且它为我处理struct中的值。
下面是一个例子:
header.c有这个匿名结构:
struct
{
char line1[80];
char line2[80];
char line3[80];
} header;
我想操纵“interface.c”的值,因为我正在在另一个命令行界面文件。我的第一直觉是使用一个外部的,但它似乎像添加以下功能header.c一样好或更好(有些人反对使用实习医生时可以避免的)。
void changeHeaders(char *one, char *two, char *three);
void changeHeaders(char *one, char *two, char *three)
{
strcpy(header.line1, one);
printf("\nHeader 1: %s", header.line1);
strcpy(header.line2, two);
printf("\nHeader 2: %s", header.line2);
strcpy(header.line3, three);
printf("\nHeader 3: %s", header.line3);
}
现在,只要我包含该函数的原型,我就可以通过使用该函数来处理来自任何文件的那些结构变量。希望能帮助别人。
如果只使用一次,然后你为什么把它在.h文件? – 2012-07-05 17:23:52
我在我的项目中使用它,它是全球性的。 – HemoGoblin 2012-07-05 17:25:34
@HansPassant:他只有一个_instance_类。 – 2012-07-05 17:35:14