宏定义&CodeBlocks&Glib

一、gcc的参数中
-Dmacro             等价于代码里   #define macro
-Dmacro=value  等价于代码里   #define macro value
-Umacro            等价于代码里    #undef macro

二、宏定义时 , 
斜杠( "\")是用来续行,
" # "用来把参数转换成字符串,是给参数加上双引号。
" ## "则用来连接前后两个参数,把它们变成一个字符串,
" #@"是给参数加上单引号。
  例如
#define Conn(x,y) x##y
  #define ToChar(a) #@a 
  #define ToString(x) #x
 
int  n = Conn(123,456);   
结果n=123456;
  char * str = Conn( "asdf" "adf" )
结果str =  "asdfadf" ;
  char  a = ToChar(1);
结果a= '1' ;
  char * str = ToString(123132);
结果str= "123132" ;
 
三、在CodeBlocks里使用-D定义值为字符串的宏,存在Bug
 
如:定义Glib的G_LOG_DOMAIN的日志域宏时,在编译选项里加入
-DG_LOG_DOMAIN="plugin_dispatch"   构建时提示 plugin_dispatch未定义,明显是宏预处理时,把双引号丢掉了。
解决办法是使用gmacros.h的#define    G_STRINGIFY_ARG(contents)    #contents
G_LOG_DOMAIN=G_STRINGIFY_ARG(plugin_dispatch)
构建提示syntax error near unexpected token `('
改成G_LOG_DOMAIN="G_STRINGIFY_ARG(plugin_dispatch)"构建成功
 

转载于:https://www.cnblogs.com/xuybin/p/3175438.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Visual Studio Code中修改宏定义的浅色,可以通过编辑主题文件来实现。 首先,打开Visual Studio Code,并点击左侧的扩展图标。在搜索栏中输入"Theme",然后选择一个合适的主题扩展,如"Colorful"。 安装完主题扩展后,点击左下角的齿轮图标,选择"Settings"打开设置面板。在搜索栏中输入"Color Theme",然后选择"Color Theme"选项。 在右侧的下拉菜单中选择刚刚安装的主题,如"Colorful"。然后,在搜索栏中再次输入"Macro",找到"Editor: Macro Predefined Variables"选项。 点击该选项,在下方的输入框中输入你想要修改的宏定义的浅色的CSS样式。你可以使用CSS的颜色属性来定义浅色的颜色值,例如:"color: #ff0000;"表示红色。 完成后,保存设置,关闭设置面板。现在,你的Visual Studio Code中的宏定义的浅色就被修改了。请注意,这个修改只会在你选择的主题中生效,如果想要在其他主题中也生效,需要重复上述步骤。 希望这个回答对你有所帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [C语言: 从 CodeBlocks 到 Microsoft Visual Studio 2017](https://blog.csdn.net/weixin_30586085/article/details/99843284)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值