首先了解指针之前需要了解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;
}