Part4 程設 指標

2021-10-14 12:29:25 字數 1333 閱讀 3872

「儲存單元的位址」和「

儲存單元的內容」

float *pointer_3;

char *pointer_4;

int a,b;

int *pointer_1=&a,*pointer_2=&b;

賦值語句可為:

a=5; 等價於 *pointer_1=5;

⚫ 指標在使用前必須初始化。

⚫ 和別的變數一樣,定義指標不初始化 是乙個比較普通的錯誤。

⚫ 沒有初始化的指標可能指向任意位址, 對這些指標作操作可能會導致程式錯誤。

⚫ null是乙個特殊指標值,稱為空指標。它的值為0。它可被用來初始化乙個指標,表示不指向任何位址。

乙個變數有位址,乙個陣列包含若干元素,每個陣列元素都有相應的位址指標變數可以指向陣列元素(把某一元素的位址放到一 個指標變數中)

所謂陣列元素的指標就是陣列元素的位址。

int a[10]=;

int *p;

p=&a[0];

注意:陣列名a不代表整個陣列, 只代表陣列首元素的位址。

「 p=a;」的作用是「把a陣列的首 元素的位址賦給指標變數p」,而不是「把陣列a各元素的值賦給p 」 。

引用乙個陣列元素,可用下面兩種方法:

下標法,如a[i]或p[i]形式 

指標法,如*(a+i)或*(p+i) 其中a是陣列名,p是指向陣列元素的指標變數,其初值p=a

int main()

int& sum(int a[ ],int n) //求陣列a中元素的和

ps:new操作失敗時,返回空指標。

int *p;

p = new int;

if(!p)

型別名*陣列名[陣列長度];

就是指向函式的指標,指向函式**的起始位址。

"定義方法"

int isdigit(int n, int k);

int (*p)(int, int );

p=isdigit;

"使用方法"

a=isdigit(n,k);

a=p(n,k)

指標p未賦值就使用*p

指標p的值為null卻使用*p

指標p指向動態記憶體,但該記憶體已 被delete了,再使用*p

指標指向動態記憶體,但該記憶體被 delete兩次

指標指向動態陣列,但陣列在操作時 曾經下標越界,然後delete時會崩潰

指標指向普通陣列,delete時會崩潰

Python學習筆記 part 4

ide vscode python版本 python3.6 學習教材 python程式設計從入門到實踐 人民郵電出版社 if語句 if語句中判斷相等用 同c 該條件測試無視大小寫。且和或分別用and和or表示。檢查特定值是否包含在列表中用 元素 in 列表名 如下,如果為真執行print true ...

part4 資料型別

1.數值型 整數型 浮點型 複數型 a.整數型 int b.浮點型 float c.複數型 complex 2.布林型 a.真 true 1 b.假 false 0 首字母必須大寫!3.字串 a.單引號 b.雙引號 c.三引號 三引號可以輸入文字,可以換行 4.none 代表沒有,01.列表 lis...

華為歷年機試試題 part4

題目簡介 我國大陸運營商的手機號碼標準格式為 國家碼 手機號碼,例如 8613912345678。特點如下 1 長度13位 2 以86的國家碼打頭 3 手機號碼的每一位都是數字。請實現手機號碼合法性判斷的函式要求 1 如果手機號碼合法,返回0 2 如果手機號碼長度不合法,返回1 3 如果手機號碼中包...