任何人都可以详细解释下面的宏做什么?
#define write_XDATA(address,value) (((char *)0x010000) [address]=value)
Run Code Online (Sandbox Code Playgroud)
谢谢!
你用吧:
write_XDATA( Address, Value );
Run Code Online (Sandbox Code Playgroud)
它被扩展了:
((char*)0x010000)[Address]=Value;
Run Code Online (Sandbox Code Playgroud)
这相当于以下内容:
char* baseAddress = (char*)0x010000;
*(baseAddress + Address) = Value;
Run Code Online (Sandbox Code Playgroud)
所以基本上它写了一个存储在Value地址的字节0x010000 + Address.