指標

爱新觉罗LQ發表於2024-08-13

指標

1. 指標的作用

  • 使程式簡潔、緊湊、高效
  • 有效地表示覆雜的資料結構
  • 動態分配記憶體
  • 能直接訪問硬體
  • 能夠方便的處理字串
  • 得到多於一個的函式返回值

2. 指標和指標變數


指標初始化

int main() {
    int a = 10;
    int * p = &a;  //  p 是指標變數,p 的內容為 a的地址
    printf("&a=%p p=%p &p=%p\n", &a, p, &p);
    return 0;
}

3. 指標的目標和解引用

指標指向的記憶體區域中的資料稱為指標的目標

如何透過指標修改指標的目標呢?===> 指標的解引用

int main() {
    int a = 10;
    int * p = &a;
    (*p)++;  //  間接地去訪問了指標的目標
    cout << a << endl;  //  11
    return 0;
}

關於指標的3種寫法:

4. 指標的賦值

0是有效的地址(最小的)

指標的賦值



陣列名代表了整個陣列的起始地址(也就是a[0]的地址)

int main() {
    int a[] = {1, 2, 3};
    int * p;
    printf("%p %p\n", a, &a[0]);
    return 0;
}

相關文章