我想读取一个存储在绝对值已知的地址的值.我想知道我怎么能做到这一点.例如.如果值存储在0xff73000.然后可以通过C代码获取存储在此处的值.提前致谢
Jur*_*aho 12
只需将地址分配给指针:
char *p = 0xff73000;
Run Code Online (Sandbox Code Playgroud)
并根据需要访问该值:
char fist_byte = p[0];
char second_byte = p[1];
Run Code Online (Sandbox Code Playgroud)
但请注意,该行为取决于平台.我假设这是针对某种低级嵌入式编程,其中平台依赖性不是问题.
Ari*_*Ari 12
char* p = 0x66FC9C;
Run Code Online (Sandbox Code Playgroud)
这将导致此警告:
Test.c:在函数“main”中:Test.c:57:14:警告:初始化使指针从整数而不进行强制转换 [-Wint-conversion] char* p = 0x66FC9C;
要设置某个地址,您必须执行以下操作:
char* p = (char *) 0x66FC9C;
Run Code Online (Sandbox Code Playgroud)
Zde*_*ica 11
两种方式:
1.将地址文字转换为指针:
char value = *(char*)0xff73000;
Run Code Online (Sandbox Code Playgroud)
2.将地址分配给指针:
char* pointer = 0xff73000;
Run Code Online (Sandbox Code Playgroud)
然后访问值:
char value = *pointer;
char fist_byte = pointer[0];
char second_byte = pointer[1];
Run Code Online (Sandbox Code Playgroud)
char您的地址所代表的类型在哪里.