設定 EYNY 為首頁  |  加入我的最愛
伊莉討論區
熱門搜尋: 海角七號  周杰倫  spore  火影  稻香  蒼井空  潮吹  巴比倫密碼 


休閒聊天
學術文化
感情感性
興趣交流
家庭事務
旅遊交流
飲食交流
家族門派
貼圖分享
動漫交流
音樂世界
美容打扮
潮流資訊
影視娛樂
電玩遊戲
連線遊戲
網絡遊戲
交易廣場
下載分享
BT下載區
CB下載區
電腦資訊
數碼產品
手機交流
網站事務
體育運動
時事新聞
上班一族
博彩娛樂
成人話題


 
標題: [求助] 我的程式碼有錯誤~~~麻煩幫我檢查一下
jane18
該用戶已被刪除









發表於 2007-6-16 05:08 PM 
伊莉部落格伊莉交友伊莉聊天伊莉相簿

我的程式碼有錯誤~~~麻煩幫我檢查一下

[顯示] [隱藏]
出現的 錯誤訊息是
警告        1        變數 'OctStr' 已在指派值之前使用。可能會在執行階段產生 null 參考例外狀況。
警告        2        變數 'Str1' 已在指派值之前使用。可能會在執行階段產生 null 參考例外狀況。
警告        3        變數 'HexStr' 已在指派值之前使用。可能會在執行階段產生 null 參考例外狀況。        

程式碼如下
Public Class Form1
    Inherits System.Windows.Forms.Form
    Dim TextStr As String
    Dim t As Short
    Dim str4 As String

    Private Function NumToOct(ByVal Octint As Integer) As String
        Dim Octmod As Integer
        Dim OctStr As String
        If Octint = 0 Then
            NumToOct = "0"
        Else
            Do While Octint > 0
                Octmod = Octint Mod 8
                Octint = Octint \ 8
                OctStr = Str(Octmod) & OctStr
            Loop
            NumToOct = OctStr
        End If
    End Function
    Private Function NumToBinary(ByVal inte As Integer) As String
        Dim Amod As Integer
        Dim Str1 As String
        If inte = 0 Then
            NumToBinary = "0"
        Else
            Do While inte > 0
                Amod = inte Mod 2
                inte = inte \ 2
                Str1 = Str(Amod) & Str1
            Loop
            NumToBinary = Str1
        End If
    End Function
    Private Function NumToHex(ByVal Hexint As Integer) As String
        Dim HexMod As Integer
        Dim HexStr As String
        If Hexint = 0 Then
            NumToHex = "0"
        Else
            Do While Hexint > 0
                HexMod = Hexint Mod 16
                Hexint = Hexint \ 16
                Select Case HexMod
                    Case 10
                        HexStr = "A" & HexStr
                    Case 11
                        HexStr = "B" & HexStr
                    Case 12
                        HexStr = "C" & HexStr
                    Case 13
                        HexStr = "D" & HexStr
                    Case 14
      [color=blue][size=2][ [u]瀏覽完整內容請先註冊或登入會員[/u]。][/size][/color]

頂部
overing
該用戶已被刪除









發表於 2007-6-18 05:01 PM 
伊莉部落格伊莉交友伊莉聊天伊莉相簿

三個Do Loop之前分別加上
OctStr=""
Str1=""
HexStr""
試試看...

頂部
ewe
(緣)

Rank: 3Rank: 3Rank: 3
中學生(1000/4000)
潛水  
UID 330304
精華 0
積分 1004
帖子 750
潛水 19116 米
閱讀權限 30
註冊 2006-10-26
發表於 2007-7-4 01:32 PM  資料 文集 短消息 
伊莉部落格伊莉交友伊莉聊天伊莉相簿

我有個小小的建議,發表自己的程式時後面加個註解會比較好,像我之前寫的程式,拿給學校的老師看,老師也一時無法看懂,因為每個人的邏輯概念都不太一樣,所以寫出來的程式都不一樣,最好後面加個註解,這樣才知道你想寫什麼,要幫忙檢查的人會比較好檢查,我在努力幫你找看看。

頂部
superccf

Rank: 1
幼兒生(0/200)
潛水  
UID 1169532
精華 0
積分 94
帖子 413
潛水 1038 米
閱讀權限 10
註冊 2007-4-26
發表於 2007-7-8 04:38 PM  資料 文集 短消息 
維克斯討論區

三個問題其實是一樣的, 像這一行: OctStr = Str(Octmod) & OctStr ,你想把一個數字加到結果字串內,但一開始結果字串還沒有任何字元時,就有可能出現問題,有時可能會對,但那要看程式語言的特性,還是保險點在do外面設定初值為空比較好。

頂部
tfchien
該用戶已被刪除









發表於 2007-7-10 10:45 PM 
伊莉遊戲

是的,基本是Null 值是不能和字串相加的,可以再Loop之前,或在定義變數時,設為=""
如:
Dim TextStr As String=""
要不然,就辛苦一點,在程式碼內做處理(一般是針對取得外部資料時,不可預知是否為Null)
If TextStr.Equals(DBNull.Value) then
   TextStr=""
End If

頂部
 




當前時區 GMT+8, 現在時間是 2008-10-8 02:15 AM

    本论坛支付平台由支付宝提供
携手打造安全诚信的交易社区 Powered by Discuz! 5.0.0  © 2001-2006 Comsenz Inc.
Processed in 0.097967 second(s), 6 queries , Gzip enabled

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