解釋:實際上data1和data2都是一維數組,然而data1的每一個元素都是一個10元素的一維數組,data2的每個元素是一個(指向char數據類型的)指針。指針和數組的區別,就在求數據尺寸時體現出來,data1[1]是一個數組,它的尺寸是10(定義的尺寸);data2[1]是指針,尺寸就是指針的大小4(32位環境)。
然而,這樣兩個數組的data?[1]+1用printf()輸出的效果卻是相同的(參見:https://bbs.bccn.net/thread-442045-1-1.html),原因在於調用printf()函數時這個實參被蛻化爲指針了,這個現象掩蓋了事物的本質,所以很多人以爲這樣定義的兩個數組是相同的。
再三强調:指針和數組不要混淆!
[ 本帖最后由 TonyDeng 于 2015-2-17 14:57 编辑 ]