筆者想在此分享一下自己最近學習的指標相關的內容。
指標是什麼?
指標就是記憶體的乙個位址,它能夠增加變數的訪問方法,也就是說,變數不僅能通過變數名來直接呼叫,也可以通過指標來訪問。指標指向的就是這個變數所在的位址,通過訪問這個位址,來呼叫位址所儲存的變數。
指標的定義與使用。
int i = 0;
int *p = &i;
這裡便是對乙個指標p的定義。*表明變數p是乙個指標,而&是取位址的操作符,也就是說,將變數i的位址存到指標p中。通過操作指標p,來對變數i進行間接的操作。定義指標的目的不是獲取位址,而是間接訪問該變數。*運算子是取指標所指向的值,以上面為例子:int y = *p + 3; 那麼這個時候y就是3。
再舉乙個例子:
int x = 4, y = 5;
int *p = &x;
*p = y+2; 此時x = 7,p指向x
p = &y; 此時p指向y
cout << *p; 輸出結果為5
指標與陣列的簡單結合。
陣列名儲存了陣列的第乙個元素的位址,也就是說,陣列名其實就是乙個指標,但是它是乙個指標常量,也就是說,它的值不能改變。定義乙個陣列int i [9],乙個指標p = i;
那麼就可以通過指標p來訪問陣列的元素。p[3] 就是陣列的第四個元素。
舉乙個用不同方式輸出陣列的例子:
之前是用for迴圈再cout存入資料
for(int i = 0;i <= 8;i++)
for(int i = 0;i<= 8;i++)
for(p = array; p<= array+8;p++)
for(p = array,i = 0;i <= 8;i++)
for(p = array,i =0;i<=8;i++)
菜鳥程式設計 指標初步
這裡,筆者想分享一點關於指標和動態記憶體分配的內容。在分享之前,筆者先簡單分享一下各個記憶體區域及他們的儲存內容。全域性命名空間,儲存全域性變數 自由儲存區 也稱為堆 也是與動態記憶體分配相關的內容,需要用new和delete關鍵字來操作。暫存器 cpu內部工作使用 一般不能直接使用,可以用regi...
C this指標初步使用,與鏈式程式設計
include pch.h include include using namespace std class person person addage person p void showage void test1 int main 注意這裡 person addage person p 返回的...
程式設計初步
1 乙個分支的if語句 2 if else 二分支選擇結構 多分支選擇結構 if else 兩個語句可以新增括號表示等價的潛逃匹配關係。switch 表示式 注意 1。表示式型別為整形,字元型或列舉型,不能為浮點型。2。break可使用來簡化過程。3。case的內容不能重複。4。運算子加單引號。如果...