1樓:冰寧
##稱為連線符,用來將巨集引數或其他的串連線起來。
例如有如下的巨集定義:
#define con1(a, b) a##e##b#define con2(a, b) a##b##00那麼:printf("%f\n", con1(8.5, 2));
printf("%d\n", con2(12, 34));
將被為:
printf("%f\n", 8.5e2);
printf("%d\n", 123400);
將上面的例子補充完整:
#include
#define con1(a, b) a##e##b#define con2(a, b) a##b##00int main()
執行結果:
850.000000
123400
2樓:
a##b 實際上就是ab,但要注意實際的用法:
這應該算乙個預編譯的運算,在巨集的定義中經常用到,比如為了和防止別人定義的變數衝突我們可以定義乙個巨集,使我們自己的變數都帶乙個my_字首,巨集定義如下:
#define my_declare(type,name)\type my_##name;
讀者可以看看下面的例子程式:
#include
#define my_declare(type,name)\type my_##name;
void main()
在c語言中,表示式:a>b!=c是什麼意思?
3樓:匿名使用者
>的優先順序大於!= ,所以他們的計算過程為:(a>b)然後!=c,a>b結果一般為bool值,為0或1,之後你就明白了吧。
4樓:
>的優先順序高於!=
所以是a>b的結果不等於c
5樓:小潘潘磊
a>b的值不等於c的值..
6樓:哀傷の霜之哀傷
a>(b!=c)這樣看就行了 先算b!=c得到的邏輯值賦值給a
謝謝採納
a^=b c語言中是什麼意思,^=是什麼運算子?謝謝賜教
7樓:陳學陽
a&=b;等效於a=a&b; //a和b的按位與a^=b;等效於a=a^b; //a和b按位異或a|=b;等效於a=a|b; //按位或a<<=b;等效於a=a<>=b;等效於a=a>>b; //a右移b位
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
8樓:
異或運算 對二進位制數按位異或,如 a=0b0101 b=0b1010
a^=b表示 a=a^b=0b1111
c語言中的字元型的運算,在C語言中,要求運算數必須是整型或字元型的運算子是()。
include include include using namespace std void k add string a,string b,int k 將長的字串放在前面 if a.size b.size string temp a a b b temp 對源字串進行翻轉 reverse a....
c語言中s a是什麼意思,c語言中,a b是什麼意思?
1.s a 等價於 s s a 等價於 s s a a a 1 意思是 s自增a值以後,a再自增1。2.要弄清楚表示式的具體含義,必須知道運算子運算的先後順序,然後分步進行解釋。以下是運算子的優先順序別表 是s s a 的意思,其中a 是a a 1的意思,但 在a後面表示後加加,是整個表示式運算結束...
C語言中的基本運算問題,C語言中的基本運算問題
有些運算操作是要區分有符號與無符號的情況的,比如除法,取模運算其計算語意是不同的,具體來說,有符號的除法在x86平台上對應的彙編指令是idiv,而無符號的除法對應的則是div。而對於另外一些操作運算,則是不區分有符號與無符號的,比如,加法,減法,乘法運算。可以通過以下 測試 int main 雙目運...