第 6 章 數(shù)組和指針
問題列表:
6.1 我在一個(gè)源文件中定義了char a[6], 在另一個(gè)中聲明了extern char *a 。為什么不行?
6.2 可是我聽說char a[ ] 和char *a 是一樣的。并非如此。
6.3 那么, 在C 語言中“指針和數(shù)組等價(jià)” 到底是什么意思?
6.4 那么為什么作為函數(shù)形參的數(shù)組和指針申明可以互換呢?
6.5 如果你不能給它賦值, 那么數(shù)組如何能成為左值呢?
6.6 現(xiàn)實(shí)地講, 數(shù)組和指針地區(qū)別是什么?
6.7 有人跟我講, 數(shù)組不過是常指針。
6.8 我遇到一些“搞笑” 的代碼, 包含5["abcdef"] 這樣的“表達(dá)式”。這為什么是合法的C 表達(dá)式呢?
6.9 既然數(shù)組引用會蛻化為指針, 如果arr 是數(shù)組, 那么arr 和&arr 又有什么區(qū)別呢?
6.10 我如何聲明一個(gè)數(shù)組指針?
6.11 我如何在運(yùn)行期設(shè)定數(shù)組的大小?我怎樣才能避免固定大小的數(shù)組?
6.12 我如何聲明大小和傳入的數(shù)組一樣的局部數(shù)組?
6.13 我該如何動態(tài)分配多維數(shù)組?
6.14 有個(gè)靈巧的竅門: 如果我這樣寫int realarray[10]; int *array = &realarray[-1]; 我就可以把“array” 當(dāng)作下標(biāo)從1 開始的數(shù)組。
6.15 當(dāng)我向一個(gè)接受指針的指針的函數(shù)傳入二維數(shù)組的時(shí)候, 編譯器報(bào)錯(cuò)了。
6.16 我怎樣編寫接受編譯時(shí)寬度未知的二維數(shù)組的函數(shù)?
6.17 我怎樣在函數(shù)參數(shù)傳遞時(shí)混用靜態(tài)和動態(tài)多維數(shù)組?
6.18 當(dāng)數(shù)組是函數(shù)的參數(shù)時(shí), 為什么sizeof 不能正確報(bào)告數(shù)組的大小?
相關(guān)推薦:2010年9月計(jì)算機(jī)等級考試成績查詢時(shí)間匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |