[問題] 錯誤訊息請教
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
我要讓我的程式可以產生出locs的檔案,但卻會出現一個錯誤
雖然我按繼續他能然會執行,但我之前有時候按繼續執行會出現另外一個錯誤
希望得到的正確結果:
可以正常地跑出我要的檔案沒有錯誤
程式跑出來的錯誤結果:
Run-Time Check Failure #2 - Stack around the variable 'z2' was
corrupted.
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
VC++
有問題的code: (請善用置底文標色功能)
int readmv(int mvidx,short ***mxp,short ***myp,int width,int height)
{
FILE *mvx,*mvy;
int x,y;
char z3[]="000",z2[]="00",z1[]="0",z0[13],zx[13],zy[13];
char fx[13],fy[13],e[]=".txt";
itoa(mvidx,z0,10);
printf("%s\n",z0);
if(mvidx<10)
{
strcat(z2,z0);
strcpy(zx,z2);
strcpy(zy,z2);
}
else if(mvidx<100)
{
strcat(z1,z0);
strcpy(zx,z1);
strcpy(zy,z1);
}
else
{
strcpy(zx,z0);
strcpy(zy,z0);
}
strcpy(fy,"mvv");
strcat(fy,zy);
strcat(fy,e);
printf("%s \n",fy);
strcpy(fx,"mvx");
strcat(fx,zx);
strcat(fx,e);
printf("%s \n",fx);
mvx=fopen(fx,"r");
mvy=fopen(fy,"r");
for(y=0;y<height;y++)
{
for(x=0;x<width;x++)
{
fscanf(mvx,"%d ", &mxp[y][x][0]);
fscanf(mvy,"%d ", &myp[y][x][0]);
}
}
fclose(mvx);
fclose(mvy);
return 0;
}
補充說明:
如果我把z2改成000 又會出現stream !=null 這又是代表什麼意思??
謝謝各位指教
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.114.78.90
→
10/24 21:18, , 1F
10/24 21:18, 1F
→
10/24 21:22, , 2F
10/24 21:22, 2F
→
10/24 21:26, , 3F
10/24 21:26, 3F
→
10/24 21:27, , 4F
10/24 21:27, 4F
→
10/24 21:33, , 5F
10/24 21:33, 5F
→
10/24 21:33, , 6F
10/24 21:33, 6F
→
10/24 21:44, , 7F
10/24 21:44, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章