線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1616
推到 Plurk!
推到 Facebook!

記憶體溢位 到底是什麼原因?

答題得分者是:ikk
DaMoWang
一般會員


發表:3
回覆:1
積分:0
註冊:2007-11-20

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-07-14 18:04:09 IP:203.64.xxx.xxx 訂閱
#include <vcl.h>
#pragma hdrstop
#include<math.h><br />#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
#define OriH 150
#define OriW 200
TForm1 *Form1;
Graphics::TBitmap *TheBitmap,*TempBitmap,*Bitmap1,*pBitmap1;
int Oringal[OriH][OriW];
int Temp1[OriH][OriW],Temp2[OriH][OriW],Temp3[OriH][OriW],Temp4[OriH][OriW];
int temp1[OriH][OriW],temp2[OriH][OriW],temp3[OriH][OriW],temp4[OriH][OriW];
int block[OriH/5][OriW/5];
int block1[OriH/5][OriW/5];



void __fastcall TForm1::Button1Click(TObject *Sender)
{

......................

}

各位大大可以看到我宣告了OriW OriH
我發現我如果將它改為 512*512大小
好像影像只要超過400多
就會出現 "STACK OVERFLOW"
我程式裡有宣告
struct LABEL_INFO label_info[OriH*OriW];
memset(label_info, 0, sizeof(struct LABEL_INFO) * (OriH*OriW));

struct LABEL_INFO label_temp;

兩個區域變數
其他就沒有了
到底位什麼會出現 "STACK OVERFLOW"
ikk
尊榮會員


發表:4
回覆:413
積分:768
註冊:2003-06-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-07-14 18:23:33 IP:163.28.xxx.xxx 訂閱
太濫用記憶體了..
或是可以調整stack size....
------
FPGA驗證, FPGA開發平台, http://smims.com
系統時間:2024-04-25 0:51:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!