条件编译错误与宏

标签 c

#include<stdio.h>
#define NUM 10
main()
{     
    #ifdef NUM   
    printf("compilation succesfull");  
    #endif  
}  

上面的代码编译得很好并且在执行时打印 编译成功,但是如果我在 main() 中的第一条语句之前删除了一个空行 它给出了一个错误。 IE。程序中出现“stray #”和许多其他错误。

#include<stdio.h>
#define NUM 10
main()
{    #ifdef NUM                              
     printf("compilation succesfull");  
     #endif  
}  

谁能帮帮我?

最佳答案

预处理器语句需要独占一行。因此,您不能将它与 { 或任何不属于该语句的其他内容放在同一行。

关于条件编译错误与宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30352580/

相关文章:

C - 强制字符串参数在只读内存中

unicode程序中的c++ wofstream问题

c++ - 如何使用memset清除char数组

c - C 中的多个头文件和函数原型(prototype)

iphone - 如何在运行时为 Cocos2D CCMenu menuWithItems 正确动态创建 va_list?

c - 如何打印一个函数的地址?

c++ - 我在从文件读取的 getc () 中有一个段错误

c++ - X 元素数组中的重复项

c - 如何在里面工作 printf ?

c - free() 内存在单链表中使用 'for' 循环