C 中是否有“#”运算符?
如果是那么在代码中
enum {ALPS, ANDES, HIMALYAS};
下面会返回什么?
#ALPS
最佳答案
C语言没有#
运算符,而是预处理器(处理#include
和#define
的程序)做。简单的预处理器将#ALPS
转换为字符串"ALPS"
。
但是,这个“stringify”运算符只能在#define
预处理器指令中使用。例如:
#define MAKE_STRING_OF_IDENTIFIER(x) #x
char alps[] = MAKE_STRING_OF_IDENTIFIER(ALPS);
预处理器会将上面的示例转换为以下内容:
char alps[] = "ALPS";
关于c - 什么是 C 中的 '#' 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7952903/