首页 > 解决方案 > 在 C 中读取内存

问题描述

我在微控制器上工作,我想在执行代码后读取内存的内容。我知道要读取的内存地址和我尝试过这种方法的大小:

    const volatile unsigned char *const mem_start = 0xd0000000;

    #define size ((ptrdiff_t)0x1c000)

    unsigned char buff[size];
    ptrdiff_t j;

    for(j =0 ; j< sizeof(buff) ; j++)
    buff[i]= *(mem_start + j);

我正在寻找另一种方法来读取内存而不将其复制到缓冲区中,在我想读取它的同一内存中,冒着破坏我正在寻找的东西的风险。并且由于空间不足,buff可能会重叠

标签: cmemory

解决方案


在声明中

...= *(mem_start + j);

正在阅读记忆。那你还想要什么?


顺便说一句,你为什么不使用

mem_start[j]; ??

推荐阅读