關於C語言指標中的p 與p i

2022-07-13 13:06:10 字數 950 閱讀 5518

先看一組**:

#include void main()

我們輸入7個數,但輸出的結果卻是隨機數。產生的原因為程式執行完第一組for迴圈後,指標已經指到了陣列後的記憶體單元,如果想要輸出該陣列元素,則需重新將其首位址賦值給p(p=a)。

以下是改正的版本————————————————

當然我們還可以將p++替換為p+i;以下為參考**————————————————

#include void main()

其好處是從第二次迴圈後都不需要重新將指標指回陣列首元素。

方法a[0]位址

a[1]位址

a[i]位址

通過陣列元素名

a[0]

a[1]

a[i]

通過陣列名a

*a*(a+1)

*(a+i)

通過指標變數p

*p*(p+1)

*(p+i)

下標法p[0]

p[1]

p[i]

因為p指向a的首位址,即a[0],所以a[i]=>*(a+i)=>*(p+i)。

下一題用p+i有明顯的優勢————————

輸入十名學生成績,計算平均分,輸出高於平均分的成績,使用指標完成該操作。

我們先用p++,可以看到每迴圈一次都得重置p=a;

#include void main()

而用p+i的話則不需要————————————

#include void

main()

關於C語言的指標

一級指標 指標是什麼?在電腦科學中,指標 pointer 是程式語言中的乙個物件,利用位址,它的值直接指向 points to 存在電腦儲存器中另乙個地方的值。由於通過位址能找到所需的變數單元,可以說,位址指向該變數單元。因此,將位址形象化的稱為 指標 意思是通過它能找到以它為位址的記憶體單元 指標...

關於C語言的指標

c語言指標 今天學習了指標,講講我對它的認識。這是乙個指標 int i int p scanf d i p i i是乙個整型變數,p是乙個指標,輸入時賦值給i,p是i的位址。就好比,i是房子的名字,p是房子的位址,輸入的值是放在房子裡的東西。符號 是取位址的意思,在這裡是對i取位址。定義指標的時候,...

c語言中的指標 p

一 什麼是指標 定義乙個變數,系統會為變數分配記憶體單元,記憶體單元的每乙個位元組有乙個編號,這個編號就是位址,所以這個位址就指向該變數單元,位址形象化地稱為 指標 也就是說通過它可以找到以它為位址的記憶體單元。二 指標變數 定義指標變數 基型別 變數名 int name 整型 char name ...