如何解决将宏中的参数字符串化
#define MY_ASSERT_TEST(para,parB,parC) do { \
for (int i = 0; i < TestStruct::parB::TestData_parC_TestOptions_Len; i += 1) \
{ \
if (para == TestStruct::parB::TestData_parC_TestOptions_i) \
return; \
} \
MY_LOG("MY_ASSERT_TEST Warning: %s",#para); \
} while(0)
它正确替换了 parB
,但没有替换 parC
和 i
。
我尝试过类似 TestStruct::parB::TestData_#parC_TestOptions_#i
的方法。
或 TestStruct::parB::TestData_(#parC)_TestOptions_(#i)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。