![](/img/trans.png)
[英]What is wrong in comparing a null with an object rather than an object with a null
[英]What is the meaning of comparing char to NULL on AIX (xlc)?
我正在将AIX代码移植到Linux。 我在AIX xlc编译器上遇到了一些将char与NULL比较的代码。 相同的代码在Linux上产生编译错误。
有一些代码将double与NULL(d!= NULL)进行比较。
有人可以解释在AIX(xlc)上将char或double与NULL比较的语义。
在AIX上使用xlc时,“ NULL”是“ 0”的宏,而不是“(void *)0”,因此预处理器运行后的比较对于char / int / double有效。
您可以在代码上使用xlc -E或gcc -E看到它。
切勿将其用于任何东西-只是琐事。 修复您的代码,使其在非指针上下文中不使用NULL。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.