c - C中变量初始化的宏

标签 c

C 中变量初始化的宏。

#define abcd

char abcd c[] = "AJITH";

for(i=0;i<5;i++){
    printf("%c",c[i]);
}

输出:- AJITH

为什么编译器没有显示错误?这是什么意思?

最佳答案

由于#define没有abcd的替换文本,任何出现的abcd基本上都会被预处理器删除,所以

char abcd c[] = "AJITH";

变成了

char  c[] = "AJITH";

关于c - C中变量初始化的宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50885978/

相关文章:

c - 循环遍历 c 中预先存在的变量集的策略

c 数组 - 警告 : format not a string literal

c - 双指针、动态分配和使用指针数组

c - malloc 是确定性的吗?

c - 执行 C 程序直到在终端中按下 Ctrl+C

c - C可变参数宏是否能够递归扩展##__VA_ARGS__?

c++ - 使用 stat 检测文件是否存在(慢?)

c - 生成从 1 到 limit 的所有可能的不重复整数

c - 为什么这个 for 循环在第二个索引处结束?

c - 如何避免 C 运行时 (crt*.o) 垃圾