预处理命令中的#和##
生活随笔
收集整理的這篇文章主要介紹了
预处理命令中的#和##
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在c/c++的程序設(shè)計(jì)中,有的時候不免要實(shí)現(xiàn)某些對象轉(zhuǎn)換出相應(yīng)名字字符串或兩對象名直接相連的情況,這時候可采用宏定義中加入#和##分別實(shí)現(xiàn)相應(yīng)功能。下面是摘抄的一段解釋。
?
The # and ## preprocessor operators are used with the?#define?preprocessor directive.
- Using # causes the first argument after the # to be returned as a string in quotes.
- Using ## concatenates what's before the ## with what's after it.
For example, the command
#define to_string( s ) # swill make the compiler turn this command
cout << to_string( Hello World! ) << endl;into
cout << "Hello World!" << endl;Here is an example of the ## command:
#define concatenate( a, b ) a ## b...int xy = 10;...This code will make the compiler turn
cout << concatenate( x, y ) << endl;into
cout << xy << endl;which will, of course, display '10' to standard output.
總結(jié)
以上是生活随笔為你收集整理的预处理命令中的#和##的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 周五卖三天国债逆回购,资金周几到账
- 下一篇: wince下获取mac地址的简单方法!