看板 NIUECE91 關於我們 聯絡資訊
※ 引述《ccclum (我好像很閒??)》之銘言: : ※ [本文轉錄自 C_and_CPP 看板] : 作者: ccclum (我好像很閒??) 看板: C_and_CPP : 標題: [問題] overflow : 時間: Thu Sep 28 18:47:48 2006 : #include <vcl.h> : #include <stdio.h> : #include <math.h> : #pragma hdrstop : #include "Unit1.h" : //--------------------------------------------------------------------------- : #pragma package(smart_init) : #pragma resource "*.dfm" : #define width 512 : #define height 512 : #define PI 3.14159265 : TForm1 *Form1; : long SizeOfImage; : unsigned char *pic; : int graylevel[height][width]; : //--------------------------------------------------------------------------- : __fastcall TForm1::TForm1(TComponent* Owner) : : TForm(Owner) : { : } : //--------------------------------------------------------------------------- : void __fastcall TForm1::Button1Click(TObject *Sender) : { : int YY[512][512]; : int XX[512][512]; : } : 我的程式碼就只是宣告兩個陣列 : 為什麼會產生overflow? : 圖:http://0rz.net/ca1TI : PS.在borlandC 6.0環境下 BorlnadC 就類似Visual basic 的c語言 視窗c語言 當我按下button1 就會出現這個畫面 但是按別都不會出現 原因是因為intYY[512][512] 如果我把XX刪除 YY改成YY[256][256] overflow的問題又沒了 實在搞不清楚 我把所有的程式都刪除了 指留這段 其他程式碼全空 就是按下button1出問題............ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 134.208.44.166
kewang:= = 前兩行我當然知道 我用過BCB 09/28 20:56
kewang:再來就是你要去查一下 BCB Compiler能support的陣列大小 09/28 20:57
kewang:還是重複上一篇的話 自己用step by step的方式debug看看 09/28 20:59
ccclum:可是我不會用setp by step debug... 09/28 21:08
vul3co:這就是實力的差距... 09/28 21:11
ccclum:但是我把YY跟XX寫到全域變數 就行了 區域變數就會出錯.. 09/28 21:13
kewang:那你一定要查查Compiler支援的陣列大小 09/28 21:45
lovejune:survey了一下 參考一下http://0rz.net/9e1TC 09/28 23:36
lovejune:要不然你就用動態陣列 動態陣列是用heap而不是stack 09/28 23:40
lovejune:所以應該沒有問題 但是heap還是有其極限 09/28 23:41
kewang:樓上的厲害喔 連heap都出來了 話說....樓上的是誰?? 09/28 23:55
kewang:還有那個網址 應該跟這個無關吧....還要改config.sys 囧rz 09/28 23:55
lovejune:那個網址只是個參考 用來瞭解stack overflow 09/29 00:02
lovejune:每個程式都有自己的stack 09/29 00:04
ccclum:我希望能修正bcb的程式就好...想辦法克服 09/29 00:34
smallchecken:和白幕一樣...那個要看最基本的陣列支援大小... 09/29 01:46
smallchecken:如果陣列大小超過基本..+程式碼進去分成兩個陣列吧 09/29 01:47
smallchecken:不過這..和HEAP有什麼關係..還真搞不懂Or2 09/29 01:51