16.3.1 用宏参数创建字符串

2017-07-24  本文已影响0人  日常表白结衣

C允许在字符串中包含宏参数,在类宏参数的替换体中,#号作为一个预处理运算符,可以把记号转换成字符串。
如果x是一个宏形参,那么#x就是转换为字符串“x”的形参名,这个过程叫做字符串化(stringizing)。
程序示例

#include<stdio.h>
#define psqr(x) printf("the square of "#x" is %d.\n",((x)*(x)))

int main()
{
    int y = 5;

    psqr(y);
    psqr(y + 2);

    return 0;
}

输出示例

the square of y is 25.
the square of y + 2 is 49.
上一篇 下一篇

猜你喜欢

热点阅读