找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
尊貴會員無限觀看附件圖片你準備好成為出色的版主了嗎?安全提問(回答) 和 永久尊貴會員 事宜
三上悠亞無修cosplay鬼父3d銀魂siro
twzp 203妹!せい舒汙夏日fc2ppv 4モンスタx6高清[

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

(4月新番)[繁]為美好

✡ 斗破蒼穹 年番/鬥

桃園觀音文林路 女子

文化大革命 紀實錄像

[繁]迷宮飯16-

[繁]無職轉生 第二季1
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 1567|回復: 3
打印上一主題下一主題

malloc 三維陣列當機問題[複製鏈接]

Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

帖子
2979
積分
12825 點
潛水值
41478 米
跳轉到指定樓層
樓主
發表於 2009-3-25 10:25 PM|只看該作者|倒序瀏覽
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。
如題,我使用 VC6.0,malloc 了三維陣列

使用 Complier  run  時可正常執行

但最後 Complier 所生成之 .exe 獨立執行時,

卻在這裡當機

想請教一下有沒有大大遇過類似問題?

遇到這種問題請問該如何解決?

code 如下,同時附上附檔

先謝謝各位大大的不吝指教!


  1. // malloc and reset Cpq_set
  2. Cpq_set = (int***)malloc(sizeof(int**)* proj_num);
  3. for(index=0; index<proj_num; index++) Cpq_set[index] = (int**)malloc(sizeof(int*)*proj_num);
  4. for(index=0; index<proj_num; index++){
  5.   for(j=0; j<proj_num; j++) Cpq_set[index][j]= (int*)malloc(sizeof(int)*pro_num);
  6. }
  7. for(index=0; index<proj_num; index++){
  8.   for(j=0; j<proj_num; j++){
  9.    for(k=0; k<pro_num; k++) Cpq_set[index][j][k]=0;
  10.   }
  11. }

  12. // malloc and reset Dpq_set
  13. Dpq_set = (int***)malloc(sizeof(int**)*proj_num);
  14. for(index=0; index<proj_num; index++) Dpq_set[index] = (int**)malloc(sizeof(int*)*proj_num);
  15. for(index=0; index<proj_num; index++){
  16.   for(j=0; j<proj_num; j++) Dpq_set[index][j]= (int*)malloc(sizeof(int*)pro_num);
  17. }
  18. for(index=0; index<proj_num; index++){
  19.   for(j=0; j<proj_num; j++){
  20.    for(k=0; k<pro_num; k++) Dpq_set[index][j][k]=0;
  21.   }
  22. }
複製代碼


...
瀏覽完整內容,請先 註冊登入會員
附件: 你需要登錄才可以下載或查看附件。沒有帳號?註冊
分享分享0收藏收藏0支持支持0
如果我說,灌了二頁的水是因為lag / 系統不穩,
我想應該也不會有人相信吧..
若有安裝色情守門員,可用無界、自由門等軟件瀏覽伊莉。或使用以下網址瀏覽伊莉: http://www.eyny.com:81/index.php

使用道具檢舉

Rank: 3Rank: 3Rank: 3

帖子
946
積分
2494 點
潛水值
9421 米
頭香
發表於 2009-3-27 01:46 AM|只看該作者
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com
我想有必要確認你的proj_num宣告多大
說說看吧,你這三維陣列需要用到多大的空間?

使用道具檢舉

Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

帖子
2979
積分
12825 點
潛水值
41478 米
3
發表於 2009-3-28 02:02 AM|只看該作者
目前我所測試的三維陣列

所使用的的是 5*10*10 的 int


[註] 若程式整體的話,大概還要再加上 10  個 5*10 的 double
如果我說,灌了二頁的水是因為lag / 系統不穩,
我想應該也不會有人相信吧..
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com

使用道具檢舉

Rank: 3Rank: 3Rank: 3

帖子
946
積分
2494 點
潛水值
9421 米
4
發表於 2009-3-28 03:01 AM|只看該作者
所有積分大於負-100的壞孩子,將可獲得重新機會成為懲罰生,權限跟幼兒生一樣。
估算的記憶體用量不大
而且光這段代碼我跑是沒問題
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<string.h>

  4. int main()
  5. {

  6. int proj_num=10,index,j,k;
  7. int *** Cpq_set;
  8. int *** Dpq_set;

  9. Cpq_set = (int***)malloc(sizeof(int**)* proj_num);
  10. for(index=0; index<proj_num; index++) Cpq_set[index] = (int**)malloc(sizeof(int*)*proj_num);
  11. for(index=0; index<proj_num; index++){
  12.   for(j=0; j<proj_num; j++) Cpq_set[index][j]= (int*)malloc(sizeof(int)*proj_num);
  13. }
  14. for(index=0; index<proj_num; index++){
  15.   for(j=0; j<proj_num; j++){
  16.    for(k=0; k<proj_num; k++) Cpq_set[index][j][k]=0;
  17.   }
  18. }



  19. // malloc and reset Dpq_set
  20. Dpq_set = (int***)malloc(sizeof(int**)*proj_num);
  21. for(index=0; index<proj_num; index++) Dpq_set[index] = (int**)malloc(sizeof(int*)*proj_num);
  22. for(index=0; index<proj_num; index++){
  23.   for(j=0; j<proj_num; j++) Dpq_set[index][j]= (int*)malloc(sizeof(int*)proj_num);
  24. }

  25. for(index=0; index<proj_num; index++){
  26.   for(j=0; j<proj_num; j++){
  27.    for(k=0; k<proj_num; k++) Dpq_set[index][j][k]=0;
  28.   }
  29. }

  30.   system("pause");
  31.   return 0;
  32. }
複製代碼
...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部