标识符和宏有什么区别?

史密斯

当我们编写预处理器指令时,例如:

#define PI 3.1416    
// Is PI is a macro or an identifier and how do we distinguish
// one from another?
用户743382

在您的示例中,PI既是宏又是标识符。“标识符”粗略地说是指定名称的语法的正式术语。宏、函数、命名空间、类型、变量都有名称,所有这些名称都是使用标识符指定的。从上下文中应该清楚PI是作为宏还是作为标识符:

以上定义PI3.1416

在这里,它用来指代宏。

PI下面的#define指定宏的名称。

这里用来指代标识符:用来指代源代码中指定宏名称的两个字符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

捆绑包标识符和产品捆绑包标识符有什么区别?

来自分类Dev

ClojureScript中的单引号标识符和双引号之间有什么区别?

来自分类Dev

故事板中设置的UITableViewCell的还原ID和标识符之间有什么区别

来自分类Dev

USB、UUID、磁盘标识符和供应商 ID 之间有什么区别?

来自分类Dev

对象标识符和数据库中的记录ID有什么区别?

来自分类Dev

使用PDO :: bindValue(带有或不带有类型标识符)与执行之间有什么区别吗?

来自分类Dev

变量和标识符之间的区别

来自分类Dev

Rust中的宏和函数有什么区别?

来自分类Dev

monad和宏之间有什么区别?

来自分类Dev

Clojure是否具有标识符宏?

来自分类Dev

具有宏标识符的FreeRTOS静态数组声明

来自分类Dev

:=和=运算符有什么区别?

来自分类Dev

!=和<>运算符有什么区别?

来自分类Dev

Comparable和运算符compareTo有什么区别?

来自分类Dev

:=和=运算符有什么区别?

来自分类Dev

分隔符$$和//之间有什么区别

来自分类Dev

vhdl +运算符和+函数有什么区别?

来自分类Dev

Autohotkey::= 和 = 赋值运算符有什么区别

来自分类Dev

为什么所有cout和cin的“未声明标识符

来自分类Dev

“ as?”,“ as!”和“ as”有什么区别?

来自分类Dev

$ *和$ @有什么区别

来自分类Dev

$和〜有什么区别?

来自分类Dev

/ * ... * /和/ ** ... * /有什么区别

来自分类Dev

!=和<>有什么区别?

来自分类Dev

ö和ö有什么区别?

来自分类Dev

$ *和$ @有什么区别?

来自分类Dev

“ ==”和“ =〜”有什么区别?

来自分类Dev

= +和+ =有什么区别

来自分类Dev

$ @和$ *有什么区别