#和##运算符

作者: 罗蓁蓁 | 来源:发表于2017-10-14 12:56 被阅读9次

#是预处理?是的,你可以这么认为。那怎么用它呢? 别急,先看下面例子:

#define SQR(x) printf("The square of x is %d.\n", ((x)*(x)));

如果这样使用宏:

SQR(8);

则输出为:

The square of x is 64.

注意到没有,引号中的字符 x 被当作普通文本来处理,而不是被当作一个可以被替换的语言符号。

假如你确实希望在字符串中包含宏参数,那我们就可以使用“#” ,它可以把语言符号转

化为字符串。上面的例子改一改:

#define SQR(x) printf("The square of "#x" is %d.\n", ((x)*(x)));

再使用:

SQR(8);

则输出的是:

The square of 8 is 64.

很简单吧?相信你现在已经明白#号的使用方法了。

##运算符可以用于宏函数的替换部分。这个运算符把两个语言符号组合成单个语言符号。看例子:

#define XNAME(n) x ## n

如果这样使用宏:

XNAME(8)

则会被展开成这样:

x8

也就是说,##就是个粘合剂,将前后两部分粘合起来。

相关文章

  • Java入门准备-运算符及类型转换

    运算符 在Java中,运算符可分为5种 算术运算符 赋值运算符 比较运算符 三目运算符 a++和++a及a--和-...

  • java运算符02_运算符(下)

    前面讲解了赋值运算符、算数运算符(一元运算符和二元运算符)、扩展赋值运算符和比较运算符,接下来我们再讲解逻辑运算符...

  • 运算符

    算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 键盘打印和输出

  • Java初学第二弹-常用的运算符

    1、What's 运算符?Ø 算术运算符Ø 赋值运算符Ø 比较运算符Ø 逻辑运算符Ø 条件运算符这些运算符和Jav...

  • [JS-6] JavaScript 表达式与运算符

    全部运算符和表达式 运算符 赋值运算符解构赋值 比较运算符 算数运算符+ - / * %++ --幂运算符 **3...

  • 运算符

    算数运算符 关系运算符 布尔运算符 赋值类运算符 字符串连接运算符 条件运算符和其他运算符。 1算数运算符:+...

  • 基本运算符

    基本运算符 本页内容包括: 术语 赋值运算符 算数运算符 组合赋值运算符 比较运算符 三目运算符 空和运算符 区间...

  • Kotlin的基本语法四

    1.常见运算符 前缀运算符 递增和递减 in和!in运算符 比较运算符针对Int类型,是去调用compareTo函...

  • Java基础之运算符(4)

    1、在Java中运算符可以分为算数运算符、赋值运算符、比较运算符、逻辑运算符和位运算符。 2、算数运算符:+(正号...

  • Java-运算符

    java运算符是来操纵变量,有算术运算符、关系运算符、位运算符、逻辑运算符、赋值运算符、条件运算符和instanc...

网友评论

    本文标题:#和##运算符

    本文链接:https://www.haomeiwen.com/subject/zamxuxtx.html