C 基礎入門 07指標

2021-10-04 21:40:40 字數 2002 閱讀 3058

指標的作用:可以通過指標間接訪問記憶體

指標變數定義語法:資料型別 * 變數名;

示例:

int main()
指標變數和普通變數的區別

總結3:對指標變數解引用,可以操作指標指向的記憶體

提問:指標也是種資料型別,那麼這種資料型別占用多少記憶體空間?

示例:

int main()
總結:所有指標型別在32位作業系統下是4個位元組

空指標:指標變數指向記憶體中編號為0的空間

用途:初始化指標變數

注意:空指標指向的記憶體是不可以訪問的

示例1:空指標

int main()
野指標:指標變數指向非法的記憶體空間

示例2:野指標

int main()
總結:空指標和野指標都不是我們申請的空間,因此不要訪問。

const修飾指標有三種情況

const修飾指標 — 常量指標

const修飾常量 — 指標常量

const即修飾指標,又修飾常量

示例:

int main()
技巧:看const右側緊跟著的是指標還是常量, 是指標就是常量指標,是常量就是指標常量

作用:利用指標訪問陣列中元素

示例:

int main() ;

int * p = arr; //指向陣列的指標

cout << "第乙個元素: " << arr[0] << endl;

cout << "指標訪問第乙個元素: " << *p << endl;

for (int i = 0; i < 10; i++)

system("pause");

return 0;

}

作用:利用指標作函式引數,可以修改實參的值

示例:

//值傳遞

void swap1(int a ,int b)

//位址傳遞

void swap2(int * p1, int *p2)

int main()

案例描述:封裝乙個函式,利用氣泡排序,實現對整型陣列的公升序排序

例如陣列:int arr[10] = ;

示例:

//氣泡排序函式

void bubblesort(int * arr, int len) //int * arr 也可以寫為int arr

} }}//列印陣列函式

void printarray(int arr, int len)

}int main() ;

int len = sizeof(arr) / sizeof(int);

bubblesort(arr, len);

printarray(arr, len);

system("pause");

return 0;

}

總結:當陣列名傳入到函式作為引數時,被退化為指向首元素的指標

C 基礎程式設計 07 指標

7.5 const修飾指標 7.6 指標和陣列 7.7 指標和函式 7.8 指標 陣列 函式 記憶體編號是從0開始記錄的,一般用十六進製制數字表示。可以利用指標變數儲存位址。指標變數定義 資料型別 指標變數名 指標變數,存放的是位址。變數名是取變數的記憶體位址。指標變數名是取指標變數對應的記憶體中的...

C 基礎入門 6 指標

指標變數定義語法 資料型別 變數名 int main 輸出 指標p為 00befb04 a 1000 p 1000 int main 空指標 指標變數指向記憶體中編號為0的空間 用途 初始化指標變數 注意 空指標指向的記憶體是不可以訪問的 空指標 int p null 野指標 指標變數指向非法的記憶...

基礎4 1 指標入門

3 指標與函式 3 實踐 4 練習 指標是一種儲存變數位址的變數。在計算機中每個儲存單元 乙個位元組 都有乙個編號,這個編號稱為變數位址。普通變數的值是實際值,指標變數的值是變數的位址。完整 見001 address.c 指標代表的是位址 如果輸入的是位址,則相當於 變數,得到對應的值 變數位址通常...