首先了解指針之前需要了解C/C++的變量使用和內存;指向對象的內存地址
指針的定義:
int* a;
double* b;
char*....
.........
指正的使用:
#include <stdio.h>
int main() {
int a = 10;
int* b = &a; // b指向a的內存地址,指針
*b = 11;
printf("a = %d \n", a); // 通過*b修改a所在內存地址的值 a = 11
return 0;
}
指正修改數組的值:
#include <stdio.h>
int main() {
int arr[4] = {1, 2, 3, 4};
// 打印arr數組的內存地址
printf("%08X \n", &arr);
// 因爲是一個int類型的數組, 所以直接可以賦值給int* 指針
int* a = arr;
// 指針的加減法, 加減數組的元素(下標位置),而不是算數運算符的結果
a += 1; // 後移一個元素
printf("%d \n", *a); // 2
// 第一種方法
int* p = arr + 3; // 下標3 = 4
*p = 111; // 通過指針修改arr數組下標3的值爲111,可調試查看局部變量查看效果
// 第二種方法
int* m = &arr[3];
*m = 222;
// 修改第二下標的值
*(arr + 2) = 100;
return 0;
}