对不起有人可能是一个愚蠢的问题:C varargs是否使用了一个名为'end'的关键字?
我有很多使用C风格变量参数的代码。代码在可变长度函数调用的最后传入一个变量,名称为end。而且......代码也有一个叫做的枚举器,结尾为。到目前为止,他们并没有发生冲突(编译器错误说它有一个模糊的定义:它不会告诉我神秘的第二个'end'是在哪里定义的),直到我改变为vc 10.0编译器(VS 2010)。
So is end某种保留关键字特别用于变量参数? 我对他们知之甚少。但是我已经查看了大量关于可变参数的文档,并且在这里搜索,并且没有发现任何东西(这可能是件好事)。所以我想,答案是结束是不是一个特殊的词用于可变参数。我可以让某人确认吗?
感谢
'execl',当然。无论如何,这带来了另一个问题 - execl只能以这种方式工作,因为它的参数[包括NULL]的_all_是相同的类型:'char *'。这个问题的“结束”只有在与他的函数期望的其他参数类型相同时才能起作用。 – Random832 2011-04-21 17:05:09
而不是:我的代码中的'结束'只是在用户定义的长枚举列表的末尾。所以它不是任何附近的char *。 – 2011-04-21 17:06:39
RRandom832:哎呀,是的 - 谢谢。纠正。 – 2011-04-21 17:06:49