【发布时间】:2009-03-14 20:26:34
【问题描述】:
我正在尝试创建一个排列,当我完成我的问题时收到这个奇怪的错误:
Stack around the variable "temp" was corrupted
变量的段在嵌套的for循环中:
for(int i = 0 ; i < str_length ; i++)
{
for(int j = 0 ; j < str_length ; j++)
{
char temp[1];
temp[1] = text[i];
text[i] = text[j];
text[j] = temp[1];
cout << text << endl;
}
}
文本在 for 循环之外被初始化为字符串,当我将 temp[1] 转换为 char 或 int 时,我得到了同样的错误。该程序运行良好,但我担心为什么会收到此错误,有人知道为什么吗?
【问题讨论】:
-
如果您想要独特的排列,请考虑使用
for(int j = i + 1;