将QNX(Photon C编译器)中的一些遗留C代码移植到Linux(GCC)。在几个地方我看到这样的代码:函数中的C自我赋值
void process_data(char key, char *data)
{
int i;
/* Required for compilation */
i=i;
key=key;
data=data;
...
}
很明显,这段代码不需要编译,它什么也不做。
我的问题是为什么你会这样做呢?
要关闭编译器,警告使用未初始化的变量,也许。但那是纯粹的无耻罪恶。 –
也许他们正在构建警告,将未使用的变量/参数和警告视为错误。 – Michael
编写这样的代码来闭嘴警告就像用一块电子胶带盖住“检查引擎”指示灯。警告是有原因的。我会删除该代码,编译它,然后看看会发生什么。让我们知道,你会吗? –