我是这个论坛的新手所以请放轻松:)
我的代码中有以下内容
#define SYS_SBS 0x02
每当我尝试使用它并尝试输出时,我都会得到 2 作为值,但是我想将 SYS_SBS 作为我程序的输出。有没有办法,我可以做到这一点。
我无法控制源代码。我只需要输出 SYS_SBS。
其他详细信息:我无法更改某些头文件。但是我可以更改 .cpp 文件中的主要功能。我想要 SYS_SBS 作为输出。我正在使用卫星,对于我的接收器检测到的所有卫星,我必须输出它们是什么类型的卫星。在代码中,它们都是用这个十六进制数定义的。我只想输出 SYS_SBS 而不是 2
最佳答案
#include <stdio.h>
#define SYS_SBS 0x02
#define id(x) #x
int main(){
printf("%s %d\n", id(SYS_SBS), SYS_SBS);
return 0;
}
关于c++ - 我怎样才能输出#define值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17654530/