指標學習小計

2021-07-10 23:55:38 字數 427 閱讀 8851

前兩天看到乙個講函式呼叫的帖子:突然想到以前自己犯過的乙個錯誤,雖然現在不再犯了,但總覺得自己仍有理解不到位的地方,如下函式:

void fun(int *ps)

void main()

void main()

{int *p;

fun(&p);

*p = 1;

函式修改如上後,p的棧位置與棧內資料同上,ps定義時會分配4個棧,存在ps=&p,即表示ps的棧資料(*ps)與&p的站內資料(*(&p),即p)相同,此時呼叫malloc為*ps分配堆並修改其棧內資料,即等同於修改p的棧內資料,於是p的棧內資料成功變為malloc出來的堆位址。

fun函式內:

fun函式結束,走到*p=1處:

《c與指標》都看到山溝裡了,想想第一次看這本書還是7年前,可惜忘了很多,現在看來到了翻出來回味的時候了。

iOS學習小計畫

一 前期已經基本了解了一些常識及相關的名詞 三 從瀏覽的情況來看主要是,1 相關工具及開發環境的搭建 目前已經有蘋果虛擬機器 xcode ios4.3 sdk,已經linux下的objc編譯環境 主要用於學習下objc的語言 2 相關開發工具的使用,xcode的使用。3 蘋果的介面,framwork...

CSS技術學習小計

css cascading style sheet 層疊樣式表單 是用於 增強 控制網頁樣式並允許樣式資訊於網頁內容分離的一種標記語言。css定義的規則具體如下 選擇器在上述的樣式規則種,選擇器用於指定css樣式作用的html物件,花括號內的屬性是對該物件設定的具體樣式。其中,屬性和值以 鍵值對 的...

gnuplot 學習小計5 標度

gnuplot中的標度就是x軸和y軸上面所顯示的刻度和刻度上的文字。使用命令 set xtics set x2tics set ytics set y2tics 來分別將下方的x軸,上方的x軸,左邊的y軸,右邊的y軸設定為預設的標度。特別的功能選項可以在上述命令的後面加上引數來實現。用 unset ...