项恩浩 发表于 2019-9-8 13:12:18

宏定义的问题


#define a 5
int main()
{
        printf("%D",a);
        return 0;
}

打错的时候发现的,运行的结果为什么是大写的D,那那个%和,a意义何在,为什么不会被打印出来

jackz007 发表于 2019-9-8 13:40:30

本帖最后由 jackz007 于 2019-9-8 15:19 编辑

   a 就代表文本 5,在代码中 a 就代表一个整型常量 5,至于 "%D" 为什么不打印,在 printf() 函数中,% 是输出控制符,肯定不会被输出,%D 是无效的输出格式描述符,所以,就只会输出字符 D。
页: [1]
查看完整版本: 宏定义的问题