0 && 定义(_LP64)#if 如何为真?

How #if 0 && defined(_LP64) be true?

本文关键字:#if 定义 LP64      更新时间:2023-10-16

从头文件 ncurses.h 中,我认为#if有什么用,因为我认为#if 0总是返回 false 并且控制将始终是#else部分?

#if 0 && defined(_LP64)
typedef unsigned chtype;
typedef unsigned mmask_t;
#else
typedef unsigned long chtype;
typedef unsigned long mmask_t;
#endif

这永远不会是真的。_LP64很可能曾经是相关的,但它不再是相关的,为了注释掉所有相关代码,程序员在 0 中输入。

这永远不可能是真的。它很可能是这样编写的,作为注释掉代码块而不是使用/* */注释的一种方式。