【发布时间】:2012-10-11 15:24:09
【问题描述】:
在 C [不是 C++] 中:
如何将const char* 复制到字符串(字符数组)中?
我有:
const char *d="/home/aemara/move/folder"
char tar[80] ;
int dl=strlen(d);
int x=0;
while (x<dl){tar[x]=d[x]; x++; }
printf("tar[80]: %s\n",tar);
打印出来:tar[80]: /home/aemara/move/folderøèB
问题是这种方式会在数组末尾添加垃圾[有时,并非总是]
我该如何解决?或者还有其他方法可以将const char* 复制到字符串中?
【问题讨论】:
-
@GregHewgill 他可能想学习如何复制两个字符串。可能是功课
-
@PrototypeStark:我当然理解练习用于学习的想法,但如果是这样,那么为什么允许 strlen() 呢?此外,除非明确指定,否则我不会假设随机限制。