我一直在拆分我的程序几个小时试图找到该程序。我终于将它限制在几行代码中,但仍然很愚蠢(或厌倦)以找到问题。这个带指针功能的strcpy有什么问题?
它全部是使用指针的字符串复制函数。有人可以看看它吗?
void stringCopy(char *sourcePtr, char *destPtr)
{
while(*sourcePtr!='\0')
{
*destPtr=*sourcePtr;
destPtr++;
sourcePtr++;
}
}
它注入垃圾值代入我的琴弦,就像我莫名其妙地走出去串的限制。
此外,它只是用来复制长度小于10。声明源和目的数组大小的串20的一切是硬编码的。
我会用strcpy的,但是这是一个类的分配,这是不允许的。
编辑:我只是忘了输入最终的空字符到目的地!对不起,所有的麻烦,家伙!
你确定sourcePtr有足够的空间存储所有destPtr吗? – monoxygen 2013-02-15 04:52:31
为什么不使用strcpy? – monoxygen 2013-02-15 04:53:07
如果可能,请使用调试器来观察变量。 – NeonGlow 2013-02-15 04:57:10