嵌入式-C语言基础:怎么样使得一个指针指向固定的区域?

在学习单片机的时候,经常需要让一个指针指向固定的区域,这时候应该怎么操作?

#include<stdio.h>

int main()
{
    int *p;
    int a =10;
    p=&a;
    printf("改变前变量a的地址=%p\n",&a);
    p=(int *)0x000000000061FE33;
    printf("改变后p指向的地址=ox%p\n",p);
    printf("变量a的地址=ox%p\n",&a);
    return 0;
}

输出结果:

改变前变量a的地址=000000000061FE14
改变后p指向的地址=ox000000000061FE33
变量a的地址=ox000000000061FE14

可以看到,p指向了我想要它指向的那块区域,即0x000000000061FE33这块地址开辟的内存区域;值得注意的是,a的地址并没发生改变,也就是说只是改变了p指向的地址,但是对a并没有影响,它的地址并没有发生变化。

posted @ 2022-10-23 22:41  WellMandala  阅读(116)  评论(0编辑  收藏  举报