0
我的代碼:錯誤調試斷言失敗
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
void nhap(int **s, int line, int column)
{
int x;
srand((unsigned int)time(NULL));
for(int i=0; i<line; i++)
for(int j=0; j<column; j++)
{
x=rand()%10+0;
*(*(s+i)+j)=x;
}
}
void xuat(int **s, int line, int column)
{
for(int i=0; i<line; i++)
{
printf("\n");
for(int j=0; j<column; j++)
printf("%3d",s[i][j]);
}
}
int main()
{
int line,column;
printf("\nLine: "); scanf("%d",&line);
printf("\nColumn: "); scanf("%d",&column);
int **s=new int*[line];
for(int i=0; i<line; i++)
s[i]=new int[column];
nhap(s,line,column);
xuat(s,line,column);
getch();
for(int i=0; i<line; i++)
delete[] (s+i);
delete[] s;
}
錯誤:調試斷言失敗! Exspression:_BLOCK_TYPE_IS_VALID。 有關程序如何導致斷言失敗的信息,請參閱有關斷言的Visual C++文檔。
在我的電腦上運行正常.. Windows + Visual Studio 10 –
你不一致,'*(*(s + i)+ j)'和's [i] [j]'。你應該堅持以後,使用起來更簡單。 –
哦,不,這不是錯誤。謝謝! – Hoang