以下代码是什么意思?
以下代码的含义是什么:
//Keyboard map
#define LEFT_ARROW 'P'
#define RIGHT_ARROW 'Q'
#define UP_ARROW 'K'
#define DOWN_ARROW 'L'
#define CANCEL 'F'
#define HOME 'A'
#define BLANK 'B'
#define SIGN_TOGGLE 'G'
#define KB_DECIMAL 'R'
#define KB_ZERO 'S'
#define KB_ONE 'C'
#define KB_TWO 'D'
#define KB_THREE 'E'
#define KB_FOUR 'H'
#define KB_FIVE 'I'
#define KB_SIX 'J'
#define KB_SEVEN 'M'
#define KB_EIGHT 'N'
#define KB_NINE 'O'
#define ENTER 'T'
任何人都可以解释它是如何工作的以及为什么以这种方式定义它们?
没有找到相关结果
已邀请:
3 个回复
痰降锭骂奸
后面的单词的任何实例替换为右边的字符。所以如果代码中有这样的行:
预处理器会将该代码更改为:
在编译之前。
谷起
是一个预处理器指令,它在语法上将所有出现的
替换为
。 你的代码片段的目的是为键盘绑定指定名称,这意味着,如果你说
,编译器将看到
。 正确使用预处理器的优点不仅在于可读性:它还增加了可维护性,以防常量发生变化。 关键定义似乎是无意义的:例如,
是
,但是,通过在一个地方修改常量,可以在几次击键中解决这个问题。 另见:http://en.wikipedia.org/wiki/C_preprocessor#Macro_definition_and_expansion
爆刺疤灯