1、while循环中的size_t型变量
size_t即unsigned int,如下面语句:
size_t即unsigned int,如下面语句:
size_t i=2;
while(i>=0)
{
....
i--;
}
会进入死循环,因为当i=0再继续减1之后便溢出,变成最大值。
2、二维数组内存释放问题
int **p=new int *[2];
for(int i=0;i<2;i++)
{
p[i]=new int[3];
}
delete []p;//错误,只释放了p指向的行空间,没有释放p[i]指向的列空间
正确做法:
for(int j=0;j<2;j++)
delete []p[j];
delete[]p;