第 10 章 C 預(yù)處理器
問(wèn)題列表:
10.1 這些機(jī)巧的預(yù)處理宏: #define begin { #define end } 你覺(jué)得怎么樣?
10.2 怎么寫(xiě)一個(gè)一般用途的宏交換兩個(gè)值?
10.3 書(shū)寫(xiě)多語(yǔ)句宏的最好方法是什么?
10.4 我第一次把一個(gè)程序分成多個(gè)源文件, 我不知道該把什么放到.c 文件, 把什么放到.h 文件。(“.h” 到底是什么意思?)
10.5 一個(gè)頭文件可以包含另一頭文件嗎?
10.6 #include <> 和#include "" 有什么區(qū)別?
10.7 完整的頭文件搜索規(guī)則是怎樣
10.8 我在文件的第一個(gè)聲明就遇到奇怪的語(yǔ)法錯(cuò)誤, 但是看上去沒(méi)什么問(wèn)題。
10.9 我包含了我使用的庫(kù)函數(shù)的正確頭文件, 可是連接器還是說(shuō)它沒(méi)有定義。
10.10 我在編譯一個(gè)程序, 看起來(lái)我好像缺少需要的一個(gè)或多個(gè)頭文件。誰(shuí)能發(fā)給我一份?
10.11 我怎樣構(gòu)造比較字符串的#if 預(yù)處理表達(dá)式?
10.12 sizeof 操作符可以用于#if 預(yù)編譯指令中嗎?
10.13 我可以在#include 行里使用#ifdef 來(lái)定義兩個(gè)不同的東西嗎?
10.14 對(duì)typdef 的類(lèi)型定義有沒(méi)有類(lèi)似#ifdef的東西?
10.15 我如何用#if 表達(dá)式來(lái)判斷機(jī)器是高字節(jié)在前還是低字節(jié)在前?
10.16 我得到了一些代碼, 里邊有太多的#ifdef。我不想使用預(yù)處理器把所有的#include 和#ifdef 都擴(kuò)展開(kāi), 有什么辦法只保留一種條件的代碼呢?
10.17 如何列出所有的預(yù)定義標(biāo)識(shí)符?
10.18 我有些舊代碼, 試圖用這樣的宏來(lái)構(gòu)造標(biāo)識(shí)符#define Paste(a,b) a/**/b 但是現(xiàn)在不行了。
10.19 為什么宏#define TRACE(n) printf("TRACE: %d\n", n) 報(bào)出警告“用字符串常量代替宏”?
10.20 使用# 操作符時(shí), 我在字符串常量?jī)?nèi)使用宏參數(shù)有問(wèn)題。
10.21 我想用預(yù)處理做某件事情, 但卻不知道如何下手。
10.22 怎樣寫(xiě)參數(shù)個(gè)數(shù)可變的宏?
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |