關於野指標:也稱為懸掛指標,你沒有訪問許可權的位址(指標),這個指標有可能不存在也有可能存在但是你不能訪問
野指標很麻煩,不好判斷(錯誤的**號碼)
1.位址不存在(**號少一位)
2.位址存在但是不能訪問(**號寫成別人)
3.位址之前可以訪問,但現在不可以(更換**號碼,我卻給你之前的號碼打**)
結論:乙個函式(父函式)呼叫另乙個函式(子函式),想通過子函式修改父函式的資料.必須傳指標,子函式內部解引用
換句話說,子函式的改變要想影響父函式的資料必須傳指標和解引用.
//交換兩個變數的值,列舉常見的三個錯誤
void
swap_err1
(int a,
int b)
void
swap_err2
(int
*p1,
int*p2)
//錯誤
void
swap_err3
(int
*p1,
int*p2)
void
swap
(int
*p1,
int*p2)
//正確
intmain()
關於指標的一些理解(以自定義swap函式為例)
void swap int p1,int p2 通過指標的操作實現虛實結合。關於虛實結合,我的理解是 主函式中傳入位址給臨時設定的形參,即指標變數p1,p2,這是實向虛的轉換。而函式體內的操作,是將指標所指向的空間的內容發生交換 此空間即主函式傳入的指標所指空間 這是虛對實的操作。最後函式體結束,臨...
關於交換函式Swap的常見錯誤和用法
關於野指標 也稱為懸掛指標,你沒有訪問許可權的位址 指標 這個指標有可能不存在也有可能存在但是你不能訪問 野指標很麻煩,不好判斷 1.位址不存在 2.位址存在但是不能訪問 3.位址之前可以訪問,但現在不可以 結論 乙個函式 父函式 呼叫另乙個函式 子函式 想通過子函式修改父函式的資料.必須傳指標,子...
關於CString的一些操作函式
cstring a a.getbuffer 0 轉換字串函式。atof 在c語言中存在函式atof 可以將字串轉換為數值,不需要逐個字元解析。其函式宣告為 doubleatof const char nptr cstring物件作為引數也可以完成轉換。cstring digital 123.45 d...