开发者社区> 问答> 正文

C语言中的指针是否能够修改内存上的数据?

C语言中的指针是否能够修改内存上的数据?

展开
收起
gxx1 2022-03-29 23:51:48 1078 0
1 条回答
写回答
取消 提交回答
  • 指针变量也可以修改内存上的数据,代码如下:

    #include <stdio.h>

    int main(){

    int a = 15, b = 99, c = 222;

    int *p = &a; //定义指针变量

    *p = b; //通过指针变量修改内存上的数据

    c = *p; //通过指针变量获取内存上的数据

    printf("%d, %d, %d, %d\n", a, b, c, *p);

    return 0;

    }

    运行结果:

    99, 99, 99, 99

    上述的代码就解决了修改内存上数据的问题,我们对其中的个别代码进行说明:*p 代表的是 a 中的数据,它相当于 a,我们就可以将另外的一份数据赋值给它,也可以将它赋值给另外的一个变量。

    此外,在说明一下 * 在不同的场景下有不同的作用: 1. * 可以在指针变量的定义中使用,表明这是一个指针变量,便于将其和普通变量区分开; 2. 在使用指针变量时在指针变量的前面加 * 表示能够获取指针指向的数据,或者说表示的是该指针指向的数据本身。

    2022-03-29 23:53:23
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
内存取证与IaaS云平台恶意行 为的安全监控 立即下载
云服务器ECS内存增强型实例re6全新发布 立即下载
低代码开发师(初级)实战教程 立即下载