請問一下c++builder的錯誤訊息 |
尚未結案
|
cjeter
一般會員 發表:2 回覆:2 積分:0 註冊:2003-09-26 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
Exception! Access violation!
會發生這種 Exception 的情況太多了,大多數是因為指標存取不當所造成的,例如:
1. 指標亂指
2. 用完 delete 後,還繼續用
3. 指標所指的東西已經不存在了,還繼續使用
...
請看一下您的原始碼中對於指標部分的處理吧。
另外,您可以在 IDE 內 debug 您的程式,IDE 會在發生 Exception 時停在對應的 code 上,這樣,就可以知道是那個指標指錯了。 P.S. 請問一下 Antigua and Barbuda 是那兒?風景可好? 沒空更新的網頁...
http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... http://dllee.adsldns.org 介紹Shells,LiteStep,GeoShell....
------
http://www.ViewMove.com |
cjeter
一般會員 發表:2 回覆:2 積分:0 註冊:2003-09-26 發送簡訊給我 |
謝謝...版主大大教導..
但我的程式可以RUN...是RUN到一半時會出現這種錯誤訊息
可以在麻煩版主大大...幫我看一下嗎...謝謝
我的程式目的是將...
載入的文字檔...搜尋內容
如: AC 465464 ...這一行
存入資料庫..欄位AC 內容為465464
以此類推...將每行文字存入資料庫 //--------------------------------------------------------------------------- #include
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
請使用
[code]
// 您的原始碼
[/code]
將您的原始碼包起來,這樣別人才容易看懂您的 code。 我大概看了一下,最有可能發生問題的就是您對 AnsiString 的處理,
您使用了
D=RichEdit1->Lines->Strings[i];取得字串資料,之後用 .Pos() 去找字串位置... 到此都不會有問題, 有問題的是,您用了 D[index] 去取得某個字,但是只要 index 大於 D 的字串長度,那就會 Exception! 了,您可以另寫一個簡單的程式試試 AnsiString test="12345"; if(test[100]=='1') // 執行到這一行就掛了!! ShowMessage("1");而我不解您的程式的地方是,為什麼還要用 StringReplace 把 D 作改變,這樣的改變會使您一開始所作的 x[] 所取得的位置都沒用了,因為您已把資料改變了,而且還是把字刪除,等於是長度變短,那後面的 D[xx] 就有可能大於當時的長度,而發生 Exception! 沒空更新的網頁... http://dllee.ktop.com.tw C及指標教學,計算機概論,資訊管理導論... http://dllee.adsldns.org 介紹Shells,LiteStep,GeoShell....
------
http://www.ViewMove.com |
cjeter
一般會員 發表:2 回覆:2 積分:0 註冊:2003-09-26 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |