C++ 用cout输出字符数组出现的问题

我声明一个字符变量charch[100][10];然后我分别给ch[0],ch[1],ch[2]等赋值,为啥我用cout输出的时候我输出ch[0]时ch[1]等等后面已经... 我声明一个字符变量
char ch[100][10];

然后我分别给ch[0],ch[1],ch[2]等赋值,
为啥我用cout输出的时候
我输出ch[0]时ch[1]等等后面已经赋值了的也一起输出了,
我输出ch[1]时ch[2]等等后面已经赋值了的也一起输出了,
以此类推.....

这是我用来赋值的函数,获取日期的...
char *huoquriqi(){
time_t t = time(0);
char tmp[20];
char *fh=tmp;
strftime( tmp, sizeof(tmp), "%Y.%m.%d",localtime(&t) );
tmp[19]='\0';
return fh;
}
展开
 我来答
chiconysun
2012-10-27 · TA获得超过2.2万个赞
知道大有可为答主
回答量:5410
采纳率:92%
帮助的人:2598万
展开全部
因为这些字符串之间没有分隔符号'\0',另外也有可能是前面字符串太长,以至于存放到后面字符串的位置去了
还有,这个函数返回值是临时变量
追问
好吧,我刚刚发现这问题,我日期格式设置为2010.01.01这样刚好放不下\0了....然后就看见你回复了,所以就你吧!
追答
OK
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式