《演算法之美》第二章2.1主要講述了指標的使用,感覺很有用,把經常容易弄錯的知識點都舉出來了。特別對函式引數的三種傳遞方式進行了闡述,對指標和引用的三點區別(p34).
指標和引用的區別:1.引用必須指向某個物件,指標可以為空
2.使用引用之前不需要測試它的合法性,指標總是被測試,防止為空
3.指標可以被重新賦值以指向另乙個不同的物件,引用在初始化時被指定的物件,以後不能改變。
還有引用方式傳遞指標也非常有用,函式內部指標需要重定向。
在**裡面注意事項都表明了:
#include #includeusing
namespace
std;
void fun(int _x); //
按值傳遞,不能修改外部變數,函式內部對引數進行備份,效率低
void fun(int *_p);
void fun1(int &_r);//
引用傳遞,傳遞大物件時高效,注意在傳遞引用時宣告為const型別
void first_bigger(int *p, int
threshold);
void first_bigger1(int *&p, int
threshold);
intmain()
;
int *result = &numbers[0
]; cout
<< "
begin at:
"<< *result
60);
cout
<< "
result is:
"<< *result << endl; //
輸出0cout
<< "
begin at:
"<< *result
60);
cout
<< "
result is:
"<< *result << endl; //
輸出85
return0;
}void fun(int
_x)void fun(int *_p)
void fun1(int &_r)
void first_bigger(int *p, int
threshold)
}void first_bigger1(int *&p, int
threshold)
}
認識C 21 指標
語法 資料型別 指標名稱 int p 指標和變數建立聯絡 宣告乙個變數 int a 10 獲取變數a的位址賦值給p p a 解引用 可以用來獲取或設定指標指向的變數的值 p 解引用 通過解引用獲取變數a的值 cout p endl 通過解引用直接操作記憶體修改變數a的值 p 100 cout a e...
C C 演算法筆記 08 指標
指標表示記憶體位址,變數存放在記憶體中分配的乙個空間,不同型別的變數所佔空間不同,計算機中每個位元組對應乙個位址,變數的位址指它所占用的位元組中第乙個位元組的位址。在變數前加取位址運算子 就表示變數的位址。指標實際上是乙個unsigned型別整數。指標變數存放的是指標 廢話 或者說位址。指標變數定義...
c指標之四 指標和陣列
陣列是c內建的基本資料結構 一 陣列概述 獲取元素數量的方式 陣列長度除以元素長度 int icount sizeof vector sizeof int 1 一維陣列 2 二維陣列 3 多維陣列 二 指標表示法和陣列 單獨使用陣列名字時候會返回陣列位址,可以把陣列賦值給指標 如 int vecto...