小白大戰指標 (上)

2021-10-03 08:00:27 字數 2645 閱讀 2857

1.1 定義           格式:型別說明 *變數名

eg:int *p

(型別說明:由指標變數所指向的資料型別決定。 *---表示該變數是乙個指標變數)

1.2 賦值 格式:(& 變數名)

a.int a; int *p=&a [定義的同時進行賦值]

b.int a; int *p; p=&a; [先定義再賦值 !!!此時賦值時不加"*"]

使用指標變數前必須賦值,且給指標變數賦值只能賦予位址。

3.變數指標的引用 格式:* 指標變數

其含義是引用指標變數所指向的值。

#include

intmain()

&:取位址符,返回運算元位址的單目運算子;

" &* 「和 " * & " (」&「和」*"運算子的優先順序相同,結合性:自右向左。)

以 int num , *p ; p = &num ; 為例

1. &*p = &(*p) =p 【取變數num位址】

2. *&num = *(&num)=num 【 取變數num的值】

#include

intmain()

指標的自增自減運算是按照它所指向的資料型別的直接長度增減。

example:

short i=4;

short *p=&i;

p++; //short-佔2個位元組,p的值增加2(2個位元組)

#include

intmain()

1.定義乙個一維陣列時,系統會在記憶體中為該陣列分配儲存空間,其陣列名稱就是該陣列的首位址。
1.在定義乙個指標變數,並將陣列的首位址傳給指標變數,則該指標就指向了這個一維陣列 。

eg:int *p,a[5];

p=a || p&a[0]; //將陣列a的首位址賦給p

2.通過指標引用一維陣列

eg:        *(p+i) || *(a+i))              //i:為迴圈變數,用迴圈語句移動指標列印陣列元素 

優化: printf("%d\t",*p++) //表示指標移動可以使用"++"或"--"運算子

#include

intmain()

printf

("please input array b:\n");

for(

int i=

0; i<

5; i++

)printf

("array a is:\n");

for(

int i=

0; i<

5; i++

)printf

("%-5d"

,*p++);

//用p++控制指標移動

printf

("\n");

printf

("array b is:\n");

for(

int i=

0; i<

5; i++

)printf

("%5d",*

(b+i));

//輸出陣列元素,*(q+i) 或 *(b+i)

printf

("\n");

}

案例優化:

@!!!若此時輸出採用*p++,則重置指標變數p指向陣列a的首位址。

example:for(int i=1;i<5;i++)

scanf("%d", p++ || &a[i]);

#include

intmain()

printf

("please input array b:\n");

for(

int i=

0; i<

5; i++

) q=a;

/*@此時必須:將指標變數p、q重新定位到陣列a、b的起始位置*/

q=b;

printf

("array a is:\n");

for(

int i=

0; i<

5; i++

)printf

("%-5d"

,*p++);

//用*p++控制指標移動

printf

("\n");

printf

("array b is:\n");

for(

int i=

0; i<

5; i++

)printf

("%5d"

,*q++);

//輸出陣列元素,*(q+i) 或 *(b+i)

printf

("\n");

}

![demo](

植物大戰殭屍新植物殭屍(上)

速度 慢,同普通殭屍 西瓜投手殭屍傷害力巨大,西瓜砸碎時3 3範圍的植物全部都會受到傷害,和西瓜投手相同。魅惑無效,照樣投向植物,最好用必殺植物,地刺也能砸到 攻擊 80 3 3格仔 生命 200 出現在草地 泳池 屋頂 室內。弱點 蘿蔔保護傘 背景 一天晚上,一群殭屍劫持了西瓜投手,它們對西瓜投手...

小白程式猿大戰菜鳥工程獅 軟體管理

rpm 簡述rpm 全稱redhat package manager,redhat的包管理器。rpm是乙個資料庫管理檔案,可以通過讀取資料庫判斷軟體是否已安裝,如果已安裝可以讀取檔案的位置,並可以刪除這些檔案。rpm智慧型管理符合rpm格式的程式包,不能管理原始碼格式的程式。原始碼格式 以壓縮格式呈...

C 小白學指標2

內容依然來自於英文版的 c primer 小弟愚鈍 各路大神多多指教 demo int i 88 int r i 是引用符號 int p 表示p是乙個指標 p i 是address of 取位址 符號 p i 是dereference符號 int r2 p 是宣告的部分 是dereference符號...