C语言中字符串拼接之#,##的妙用

字符串拼接相关的宏

字符串拼接的接可以分为下面两种情况:

  1. 在程序运行过程中,使用字符串连接函数strcat()等字符串处理函数进行字符串的拼接。这属于字符串的动态拼接。
  2. 在预处理阶段进行字符串的拼接。这属于字符串的静态拼接。 下面我们重点介绍静态拼接。

预处理阶段的字符串拼接

讲拼接前必须明确下面几个概念:

  1. 字符串:我们下面提到的字符串是使用""包起来的。如"guoweilkd".
  2. 标识符:没有用""包起来的字符串。如guoweilkd.

下面分别讲字符串的拼接和标识符的拼接并转换为字符串。

多个字符串直接拼接

C语言中有这样语法规定:引号("")引起来的字符串,中间以空格分开,编译器(预处理器)会自动将其拼接成一个字符串。使用见下面是一个的例程。

#include <stdio.h>

#define STR_CONNECT(str1,str2) str1 str2
经验分享 程序员 微信小程序 职场和发展