C语言中字符串拼接之#,##的妙用
字符串拼接相关的宏
字符串拼接的接可以分为下面两种情况:
- 在程序运行过程中,使用字符串连接函数strcat()等字符串处理函数进行字符串的拼接。这属于字符串的动态拼接。
- 在预处理阶段进行字符串的拼接。这属于字符串的静态拼接。 下面我们重点介绍静态拼接。
预处理阶段的字符串拼接
讲拼接前必须明确下面几个概念:
- 字符串:我们下面提到的字符串是使用""包起来的。如"guoweilkd".
- 标识符:没有用""包起来的字符串。如guoweilkd.
下面分别讲字符串的拼接和标识符的拼接并转换为字符串。
多个字符串直接拼接
C语言中有这样语法规定:引号("")引起来的字符串,中间以空格分开,编译器(预处理器)会自动将其拼接成一个字符串。使用见下面是一个的例程。
#include <stdio.h> #define STR_CONNECT(str1,str2) str1 str2
