C 宏扩展时出错
Error With c Macro expansion
嗨,请找到以下简单的宏代码
#include <iostream>
#define INCL #include
INCL <stdlib.h>
int main()
{
std::cout << "Hello, worldn" << std::endl ;
return 0;
}
当我编译代码时,它抛出错误:程序中杂散 â#â
请帮忙。
谢谢
预处理器宏不能创建其他预处理器宏。你只是在这方面不走运。
但是,您可以使用宏作为包含参数:
#define FOO(x) "/usr/lib/" #x
#include FOO(mylib.h)
C++构建包含以下阶段:
- 预处理(宏扩展)
- 编译
- 连接
关键是你尝试使用预处理器(阶段 1)来预处理自身,这不起作用。宏只能用于生成编译器的代码。不能将预处理器指令包装到预处理器宏中。
相关文章:
- 访问者访问变体并返回不同类型时出错
- 在Linux for Windows上编译C++代码时出错
- 读取文件的最后一行并输入到链接列表时出错
- 重载操作程序时出错>>用于类中的字符串 memebr
- 调用专用模板时出错"no matching function for call to [...]"
- 是否可以通过C++扩展强制多个python进程共享同一内存
- static_assert在宏中,但也可以扩展到可以用作函数参数的东西
- C++-试图将函数指针推回到另一个CPP文件中的矢量时出错
- LINK 尝试使用 OpenSSL evp aes 256 c++ 时出错
- 在Google Kick start中提交时出错
- 在c++中访问int到类对象的映射时出错
- 如何将这个C++哈希表转换为动态扩展和收缩,而不是使用硬设置的最大值
- E0349扩展istream以支持Person类时出错
- 在C中创建Ruby扩展时出错
- 从Python扩展调用C++虚拟成员时出错
- 扩展C++类时出错(使用 cocos2d-x 框架)
- C 宏扩展时出错
- MSVC++扩展iostream时出错
- 扩展模板抽象类时出错
- 使用boost.python构建Python扩展时出错