【发布时间】:2014-05-22 16:49:15
【问题描述】:
我在收集变量时遇到了一些问题..
我当前的代码:
strcpy (date, year);
strcat (date, "-");
strcat (date, month);
strcat (date, "-");
printf("%s" , date);
因此,我希望有 2014-04 作为示例,但目前它给了我 2014-042014-04-
所以由于某种原因它打印了两次。有人知道怎么回事吗?
【问题讨论】:
-
这里没有足够的信息。请说明如何分配和初始化日期、年份和月份。
-
Null 终止你的字符串是你的朋友en.wikipedia.org/wiki/Null-terminated_string
-
同上关于缺乏信息。可能的问题包括:日期太小、月份未以 null 终止。
-
他们在 {char *year} 和 {char *month} 后用户给他们和 char date[64] 收集他们
-
@hyde:这不是
strcat的工作方式。 OP 使用了正确的语法,所以问题出在代码未显示。