C++ can';t在宏中串联___;行__; #包括 #定义STR_HELPER(x)#x #定义STR(x)STR_助手(x) #定义(_文件):“STR(_行)”) int main() { std::cout
我认为您必须定义FILE\u LOCATION宏,我看不到您在代码段中定义它的代码。 但是下面的代码不是这样做的吗C++ can';t在宏中串联___;行__; #包括 #定义STR_HELPER(x)#x #定义STR(x)STR_助手(x) #定义(_文件):“STR(_行)”) int main() { std::cout,c++,C++,我认为您必须定义FILE\u LOCATION宏,我看不到您在代码段中定义它的代码。 但是下面的代码不是这样做的吗 #include <iostream> #define STR_HELPER(x) #x #define STR(x) STR_HELPER(x) #define (__FILE__ ": " STR(__LINE__)) int main() { std::cout << FILE_LOCATION << std::endl;
#include <iostream>
#define STR_HELPER(x) #x
#define STR(x) STR_HELPER(x)
#define (__FILE__ ": " STR(__LINE__))
int main()
{
std::cout << FILE_LOCATION << std::endl;
return 0;
}
#define(uuu FILE_uuu):“STR(uu LINE_uu))
嗯,什么?你给我们看的代码根本不可能产生那种输出。正确的定义是#define FILE_LOCATION(FILE):“STR(LINE))。我在写问题时犯了错误,但源代码有正确的定义。顺便说一下,我正在使用visual studio 6
#define FILE_LOCATION __FILE__ ": " STR(__LINE__)