1
A
回答
16
C語言不具有#
操作者,但預處理器(用於處理#include
和#define
程序)一樣。預處理器簡單化使#ALPS
成爲字符串"ALPS"
。
但是,此「stringify」運算符只能用於#define
預處理器指令中。例如:
#define MAKE_STRING_OF_IDENTIFIER(x) #x
char alps[] = MAKE_STRING_OF_IDENTIFIER(ALPS);
預處理器將上面的例子中轉換成以下:
char alps[] = "ALPS";
1
#
號被用於預處理器指令,諸如#include
和#define
。它也可以在宏定義中使用,以防止宏擴展。
4
C中沒有#
運算符。#
前綴用於描述預處理器指令。
1
在C中的尖銳符號是用於預處理指令的前綴。
這不是一個運營商...
0
「#」是不是C. 操作,但預處理器(編譯器運行之前)爲 能力_中包含的頭文件: enter code here
的#include _宏展開:**#define foo(x) bar x**
_條件編譯:
**#if DLEVEL > 5
#define STACK 200
#else
#define STACK 50
#endif
#endif**
在enum {ALPS, ANDES, HIMALYAS};
什麼都不會返回ALPS。你剛剛定義了一個強整數類型(ALPS = 0, ANDES = 1 and HIMALYAS = 2)
,但是它沒有命名的用法,如下所示: enum mountain {ALPS,ANDES,HIMALYAS};
相關問題
- 1. C++ - 什麼是運算符。*?
- 2. 什麼是C++中的static_case運算符?
- 3. 什麼是C#中的「??」運算符?
- 4. 什麼是重寫的C運算符++
- 5. 什麼是<=用C++運算符
- 6. 什麼是c運算符>>
- 7. 什麼是「?」。運算符在C#中做什麼?
- 8. 什麼是Java「= +」運算符?
- 9. 什麼是 - >運算符?
- 10. 什麼是「===」運算符?
- 11. 什麼是()=>運算符?
- 12. 什麼是##運算符?
- 13. 是什麼?:運算符
- 14. 運算符&&是什麼?
- 15. 運算符模塊中`in`的等效運算符是什麼?
- 16. python中的%運算符是什麼?
- 17. 什麼是scala Stream中的#::運算符?
- 18. 什麼是JPQL中的BINARY運算符?
- 19. 什麼是Java中的&=運算符
- 20. 什麼是??! Javascript中的運算符?
- 21. :El =中的運算符是什麼?
- 22. 什麼是HTML中的「:」運算符?
- 23. Ruby中的「=〜」運算符是什麼?
- 24. 'string%variables`中的%運算符是什麼?
- 25. 「| =」運算符在C#中做什麼?
- 26. 「| =」運算符在C#中表示什麼?
- 27. **運算符在C中表示什麼?
- 28. 「| =」運算符在C中表示什麼?
- 29. - >運算符在C中做什麼?
- 30. #和##運算符在C中做什麼?
你的答案可能會更清楚:'#ALPS'本身會引發錯誤「無效的預處理指令」。但是,如果使用像'#define TEST(X)#X'那麼'TEST(ALPS)'將輸出'「ALPS」'。 – wormsparty
這麼說'char * s =#ALPS'會有意義嗎? – Bleamer
@wormsparty:謝謝,稍微澄清一下答案。 –