對陣列和指標的思考

2021-07-06 07:58:22 字數 584 閱讀 7640

最近學習了一點彙編和作業系統的知識,看的過程中對陣列和指標有了一些不同的新的認識,陣列到底是什麼。

先貼**看看現象:

//**段1

#include

void main()

//**段2

#include

void main()

這兩段**在vs2015和code::blocks上編譯均沒有錯誤

**段1在vs上甚至會有執行結果輸出!!結果如下:

但是在code::blocks上會出現以下情況:

**段2是我們正常的**,執行起來均沒有問題。

在這裡先提出以下幾個問題:

現在比較混亂,而且沒有理解清楚,等到有較好的認識了,再來寫一下。

對陣列指標的理解

整型陣列 int a 5 整型指標int p 可以存放其元素位址來進行指標訪問 字串陣列char str 5 10 該怎麼通過指標訪問其中的字串元素?字串是個陣列,所以要用陣列指標 p 即指向乙個什麼型別的陣列的指標 這是乙個寬度為10的字元陣列 所以需要 乙個寬度10的字元陣列的指標。即char ...

對於檔案的大小計算和對陣列指標和指標陣列的理解

陣列指標 定義 int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。指標陣列 定義 int p n 優先順序高,先與p結合成為乙個陣列,再由int 說明這是乙個整型指標陣列,它有n個指...

個人對「陣列和指標」的重點筆記(下)

關於變長陣列 vla 即陣列的一種不一樣的表現形式,通過使用變數表示陣列的維度。如 int a 4,b 5 double c a b 這就是乙個變長陣列。變長陣列必須是自動儲存類別,這就意味著無論在函式中宣告還是作為函式的形參宣告,都不能使用static或者extern儲存類別說明符,而且不能在宣告...