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

請問一下,當Strack overflow,Max stack size又調到最大了,還有其他的辦法

答題得分者是:fnk
trilab
一般會員


發表:10
回覆:4
積分:2
註冊:2005-02-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-10 01:31:30 IP:140.118.xxx.xxx 未訂閱
請問各位前輩: 我有去調Max Stack size 可是最大只能調到0x01000000,還是出現 錯誤訊息,可是我的記憶體有1G,為甚麼不能再往上呢?? 像遇到這樣的問題,還有其他的方法可解嗎?? 謝謝
fnk
高階會員


發表:40
回覆:149
積分:102
註冊:2004-01-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-10 03:23:53 IP:140.124.xxx.xxx 未訂閱
你可以試試使用動態宣告來產生你所需大小的記憶體...
 
double **BufferAlloc(int x, int y)  //記憶體配置函式..
  {
  int i;
  double **TempBuff = new double*[x];
  for (i=0;i
再呼叫這個函式...來配置記憶體大小...
如...
int i,j;
double **ptr;
ptr = BufferAlloc(1000,1000);
for (i=0;i<1000;i  )
  for (j=0;j<1000;j  )
    ptr[i][j] = 0;
如此一來..ptr就有1000x1000這麼大的記憶體了.. 但..要注意的是...你在沒有用到這個記憶體時... 要做釋放的動作...
void FreeBuffer(double **TempBuff, int x)   //釋放記憶體的函式...
  {
  int i;
  for (i=0;i    以下的話...不一定對..不知道我的觀念是不是對的..
希望有大大能指點一下...    動態配置...主要是向Heap(堆積)要記憶體...
靜態配置...是向Stack(堆疊)要記憶體...
基本上...Stack有大小限制...而Heap則無大小限制(可向硬碟要記憶空間)    呵~~不管觀念對不對..基本上..上面的二個函式測試結果是可以的...
應該對你有幫助...^^        ===========
有興趣,就能進步
===========
        
trilab
一般會員


發表:10
回覆:4
積分:2
註冊:2005-02-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-10 15:57:18 IP:140.118.xxx.xxx 未訂閱
感謝fnk前輩的意見 已經解決我的問題了,謝謝你
figer
一般會員


發表:4
回覆:3
積分:1
註冊:2005-05-27

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-13 15:53:43 IP:59.113.xxx.xxx 未訂閱
想請問大大 調max stack 要在那個地方調呢 感謝喔
系統時間:2024-05-18 5:30:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!