1. 前言
使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起.
2. 一般用法
3. 注意事项
3.1 举例
两句print会被展开为:
分析:
由于AGE是宏,且作为宏toString和conStr的参数,并且宏conStr和toString中均含有#或者##符号,所以A不能被解引用。导致不符合预期的情况出现。
3.2 解决方案
结果:
责任编辑:xj
原文标题:C语言中"#"和"##"的用法
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
C语言
+关注
关注
180文章
7533浏览量
128768 -
编程
+关注
关注
88文章
3441浏览量
92404
原文标题:C语言中"#"和"##"的用法
文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
C语言-#和##的具体用法
C语言中,在宏里面使用’#’和’##’有它非常神奇的作用。在宏定义的替换的过程中,#号可以作为一个预处理运算符,把宏参数转换为字符串。##运算符则可以把两个宏参数组合在一起。下面就来说说具体的用法。
在c语言中a++是什么意思
在C语言中,a++是一个自增运算符,用于对a的值进行自增操作。它是一个简化的表达式,相当于将a的值加1,并返回自增前的值。 C语言中,自增运算符有两种形式:前自增和后自增。a++属于后自增运算符
基于Rust语言Hash特征的基础用法和进阶用法
,包括Hash trait、HashMap、HashSet等,本教程将详细介绍Rust语言Hash特征的基础用法和进阶用法。 基础用法 使用Hash trait 在Rust
SQLx在Rust语言中的基础用法和进阶用法
SQLx是一个Rust语言的异步SQL执行库,它支持多种数据库,包括MySQL、PostgreSQL、SQLite等。本教程将以MySQL数据库为例,介绍SQLx在Rust语言中的基础用法和进阶
C语言中while和do-while循环的用法
循环是一种重要的控制结构,可以使程序重复执行一段代码,直到满足特定条件为止。在C语言中,while和do-while是两种常用的循环结构,本文将详细介绍这两种循环的用法。
发表于 08-18 16:35
•1147次阅读
C语言中for循环的用法和应用 C语言中for循环与while循环的区别
C语言中的循环结构时,for循环是最常用的一种。它允许重复执行一段代码,直到满足特定条件为止。
发表于 08-18 16:33
•1039次阅读
C语言中枚举的基本概念和常见用法
在C语言中,枚举是一种方便组织和表示一组相关常量的工具。枚举类型有助于提高代码的可读性和可维护性。本文将介绍C语言枚举的基本概念、语法和用法,以及一些高级技巧。
发表于 08-17 15:32
•773次阅读
【笔记】static 在C语言中的用法
当`static`关键字用于不同的上下文时,其含义和作用也会有所不同。下面是更多示例代码,展示了`static`在不同用法下的具体效果:示例1:静态局部变量#includevoidincrement
评论