如何将地址int转换为char*string

如何将地址int转换为char*string,c,memory-address,C,Memory Address,我有一个内存地址整数,如0x80480ac,我想给它分配一个字符*,如下所示: char *address="\x08\x04\x80\xac"; 我该怎么做?我相信您正在寻找: char * address = (char *)0x080480ac; 如果您只想将其作为字符串使用,与“hello,world”没有什么不同,那么@haccks是正确的,但是如果出于某种原因您确实需要地址指向内存位置0x800480ac(假设它是一个设备寄存器或其他东西),那么请查看我的答案。我想将其视为字节和

我有一个内存地址整数,如0x80480ac,我想给它分配一个字符*,如下所示:

char *address="\x08\x04\x80\xac";

我该怎么做?

我相信您正在寻找:

char * address = (char *)0x080480ac;

如果您只想将其作为字符串使用,与“hello,world”没有什么不同,那么@haccks是正确的,但是如果出于某种原因您确实需要地址指向内存位置0x800480ac(假设它是一个设备寄存器或其他东西),那么请查看我的答案。我想将其视为字节和字符的字节识别数组不一定相等,如果我正确理解你,那么你所拥有的是正确的。例如
地址[0]==0x08
地址[1]==0x04
等等。问题在于“char”的签名性是由实现定义的,所以您可能希望是特定的,
signed char*
unsigned char*