首页 > 解决方案 > 在 C 中将代码中定义的数据复制到 char 指针的内存位置?

问题描述

所以假设我有类似这样的代码。

#define DATA 0x67
char *mydata = malloc(1);
mydata = DATA

当然,第 3 行是无效的,但我正在寻找的是取 0x67 并将其读入该内存位置。这一定很明显,但我不知道正确地问这个问题会被称为什么。

标签: cmemory

解决方案


取消引用指针等效于访问数组的第一个索引(在本例中为 char 数组),这可能更容易理解:

#define DATA 0x67
char *mydata = malloc(1);
mydata[0] = DATA

如果您会分配更多内存,则可以通过这种方式访问​​此内存的所有字节。


推荐阅读