C 從入門到放棄保姆級教程 指標

2021-10-06 03:32:53 字數 868 閱讀 6792

上**,應該很好理解

int

main()

那麼有了指標我們可以做什麼?

這裡很明顯可以看到*b就是a,我可以通過對*b的修改達到修改a的目的

int

main()

那這樣間接修改有什麼用呢?

一種用法是函式的引數,我們之前就學過,函式傳引數的時候,是 copy 了乙個副本使用,不能對原來的修改

voidf(

int* a)

intmain()

儘管你傳過去的還是乙個副本,但是位址是可以對全域性修改的。

就算是位址的副本,只要是有效的位址,都可以進行操作。

其實陣列也和指標有關係

這麼說吧:

陣列名是這段資料的首位址
因為陣列裡的資料位址是連續的,所以每個變數可以用乙個偏移量得到。

voidf(

int* a)

intmain()

也可以這樣寫

voidf(

int a[

])

基本上,你可以認為陣列和指標就是通的。

陣列是對指標的封裝,可以判斷有無越界。

int

main()

可以看到通過這樣的方式,指標的許可權沒有任何限制。 如果使用不小心,就可能出現很多問題。

C 從入門到放棄(1)

c 從入門到放棄 1 以字母或下劃線開始,由字母 數字 下劃線組成 大小寫有區別 不能與關鍵字 裝置字衝突 系統預留字元 單目運算子 雙目運算子 三目運算子 空格符 用來做單詞之間的分隔,可解決特殊場景下的操作時序 逗號 變數之間 函式的多個引數之間分隔符 分號 僅用作for語句後的分隔符 冒號 s...

kmp從入門到放棄

標籤 kmp 擴充套件kmp 給你兩個字串,你需要回答,b串是否是a串的子串 a串是否包含b串 a aaaaaaaaaaaaaaaaaaaaaaaaaab b aaaaaaaab 最壞狀態 o mn 一般做法 for 列舉b在a串中的起始位置 for 向後比較ab是否相等 o n m 傳說中的kmp...

beego 從入門到放棄

beego 的專案基本都是通過 bee命令來建立的,所以在建立專案之前確保你已經安裝了 bee 工具和 beego。如果你還沒有安裝,那麼請查閱 beego 的安裝 和 bee 工具的安裝 現在一切就緒我們就可以開始建立專案了,開啟終端,進入 gopath src 所在的目錄 建立乙個專案名為201...