美文网首页
16.3.1 预处理粘合剂:##运算符

16.3.1 预处理粘合剂:##运算符

作者: 日常表白结衣 | 来源:发表于2017-07-24 19:55 被阅读0次

与#运算符类似,## 运算符可以用于类函数宏的替换部分。而且,##还可以用于对象宏的替换部分。##运算符把两个记号组合成一个记号。例如:

#define XNAME(n) x ## n //宏XNAME(4)将展开为x4

程序示例

#include<stdio.h>
#define XNAME(n) x ## n 
#define PRINT_XN(n) printf("x" #n " = %d\n",x ## n);

int main()
{
    int XNAME(1) = 14; //变成int x1 =14;
    int XNAME(2) = 20;
    int x3 = 30;
    PRINT_XN(1);  //变成 printf("x1=%d\n",x1)
    PRINT_XN(2);
    PRINT_XN(3);

    return 0;
}

此中,PRINT_XN()宏用#运算组合字符串,##运算符把记号组合为一个新的标识符。

输出示例

x1 = 14
x2 = 20
x3 = 30

相关文章

  • 16.3.1 预处理粘合剂:##运算符

    与#运算符类似,## 运算符可以用于类函数宏的替换部分。而且,##还可以用于对象宏的替换部分。##运算符把两个记号...

  • 25_#和##操作符使用分析

    关键词:#运算符、 ##运算符 1. #运算符 #运算符用于在预处理期将宏参数转换为字符串 #的转换作用是在预处理...

  • 16.3.1

    出塞二首·其一 王昌龄 秦时明月汉时关,万里长征人未还。 但使龙城飞将在,不教胡马度阴山。

  • C语言结构体

    预处理,宏定义->编译指令结构体,联合体,动态数据结构逻辑运算符,递归函数 预处理编译有4个步骤,.c文件->.i...

  • 16.3.1 记录

    近段时间每天满的要溢出来了 以梦为马却以酒为生 昏沉一点脑袋里不去想任何事情是幸福的 已经不敢一个人静静待着了 只...

  • react native 开发合集

    背景: "react": "16.3.1", "react-native": "0.55.2", 1,打包iOS应...

  • Linux C 结构体

    一、总结 预处理 自定义数据类型 ** 结构体,联合体,链表** 逻辑运算符 ** &,|,^,~,<...

  • react native 手势相关

    背景: "react": "16.3.1", "react-native": "0.55.2", 手势参考资料 官...

  • APP开发实战62-Activity数据保存和恢复

    16.3Activity数据保存和恢复 16.3.1利用onSaveInstanceState和onRestore...

  • React Native项目整合Microsoft CodePu

    本文使用的环境: React@16.3.1 React Native@0.55.4 react-native-co...

网友评论

      本文标题:16.3.1 预处理粘合剂:##运算符

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