C 关于define指令参数的简单代码混淆

C 关于define指令参数的简单代码混淆,c,msp430,C,Msp430,我正在学习C语言,在德州仪器MSP430上编写这个小程序。你能帮我理解((unsigned char*)0x0023)部分吗 我在理解这个Define指令的中间部分时遇到了问题。我试图查找此内容,但在((unsigned char*)0x0023)部分没有找到任何内容。这看起来像一个类型转换,但它不转换任何内容 我主要关心的是0x0023(十进制35)。这只是一个35位的无符号字符指针吗 代码: 我们非常感谢您的帮助,并提前向您表示感谢 ((unsigned char *) 0x0023) 是

我正在学习C语言,在德州仪器MSP430上编写这个小程序。你能帮我理解
((unsigned char*)0x0023)
部分吗

我在理解这个Define指令的中间部分时遇到了问题。我试图查找此内容,但在
((unsigned char*)0x0023)
部分没有找到任何内容。这看起来像一个类型转换,但它不转换任何内容

我主要关心的是0x0023(十进制35)。这只是一个35位的无符号字符指针吗

代码:

我们非常感谢您的帮助,并提前向您表示感谢

((unsigned char *) 0x0023)
是指向地址0x23的指针

我想你的代码样本中缺少一个换行符

在MSP430上,这是端口P1中断标志寄存器:

每个PxIFGx位都是其相应I/O引脚的中断标志 当所选输入信号边缘出现在引脚上时设置。全部的 PxIFGx中断标志在其相应的 设置PxIE位和GIE位。每个PxIFG标志必须用 软件。软件还可以设置每个PxIFG标志,从而提供 生成软件启动的中断。位=0:不允许中断 挂起位=1:中断仅挂起转换,而不是静态 级别,导致中断。如果在Px期间设置了任何PxIFGx标志 中断服务程序,或在 执行Px中断服务程序,设置PxIFGx标志 生成另一个中断。这确保了每个转换都是正确的 承认

您可以从该寄存器中读取,例如:

unsigned char result;
result = *P1IFG_ptr;
或写信给它,例如:

*P1IFG_ptr = 1;

盖伊·瑟顿:你完全正确#定义P1IFG_ptr=((易失性无符号字符*)0x0023);无符号字符结果;谢谢你非常详尽的回答!
*P1IFG_ptr = 1;