为什么cout直接输出字符数组不显示

下面这个代码,我要是屏蔽掉printf那行,就什么不显示,如果不屏蔽,printf和cout都正常显示。求解?
#include<iostream>
using namespace std;
int main()
{
char p;
char a[5];
int i;
p='a';
for(i=0;i<5;i++)
{
a[i]=p;
p++;
}
for(i=0;i<5;i++)
{
cout<<a[i]<<' ';
printf("%c ",a[i]);
}
return 0;
}

可以通过逐个输出字符数组元素的方式进行输出。 如果直接输出数组名,系统默认以字符串方式输出,遇到结束符\0就会停止。要无条件输出字符数组内的所有元素个数,那么只能遍历数组,逐个元素输出。追问

不好意思,没太读懂您的意思,我这样用a【i】输出不是逐个输出吗?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-03-02
那不是代码问题,查查别的,代码肯定是正确的。
相似回答