代码如下
变量类型与格式描述符类型不匹配,输出项与格式描述符个数不符
为什么还可以正常输出,没有异常
这段代码为什么可以跑
#include <stdio.h>
main()
{
char ch;
int k;
ch='a';
k=12;
printf("%c,%d,",ch,ch,k);
//变量类型与格式描述符类型不匹配
//输出项与格式描述符个数不符
printf("%k=%d\n",k);
//为何最终可以输出 a,97,k=12
}
第一个p语句中,第二个ch,char被视作int输出,所以输出a的相应的ASCII码,多余的k被忽略了,
第二个p语句中,%k不构成格式化占位符,且%需要用%%这样的格式输出,所以%被忽略
应该是这样