VB2005でプログラミングをしています。教えてください。


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim objFile As New System.IO.StreamReader("c:\xxx.txt", System.Text.Encoding.GetEncoding(932))
Dim strLine As String '1行
Dim strTemp() As String '戻り配列
Dim is() As String
Dim i, k, l As Integer
Dim iss() As String

i = 0
strLine = objFile.ReadLine()
While (strLine <> "")
strTemp = Split(strLine, vbTab)
① is(i) = strTemp(10)

i = i + 1
strLine = objFile.ReadLine()
End While
objFile.Close()
End Sub

①の部分でwarningが出ます。以下です。

変数 'is' は、値が割り当てられる前に使用されています。Null 参照の例外が実行時に発生する可能性があります。

どのように直せばいいのでしょうか?

教えてください。

回答の条件
  • 1人2回まで
  • 登録:2008/03/23 21:49:00
  • 終了:2008/03/23 23:33:57

回答(2件)

id:pahoo No.1

pahoo回答回数5960ベストアンサー獲得回数6332008/03/23 22:41:09

ポイント5pt

VisualBasic2005は使ったことがありませんが、VisualBasic.NETと同じで、"is" は予約語だと推測されます。予約語は変数名として使えないので、別の名前にしてください。

どうしても予約語を名前として使いたいときには、VB.NETの場合は「予約語を名前にする」方法がありますが、ソースの可読性が下がるので、あまりお勧めはできません。

id:mai_mai_mail

isbnというものにしても同様のワーニングがでました。これも予約語でしょうか?

すみません。素人なので教えてください。

2008/03/23 22:45:25
id:y3kz No.2

y3kz回答回数31ベストアンサー獲得回数92008/03/23 23:01:22

ポイント65pt

http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard27.h...

↑の「6.動的配列」-「■リスト10:間違った例」で示されている

動的配列はサイズを決定しないまま要素にアクセスするとエラーになります。

にあたるのではないでしょうか?

id:mai_mai_mail

おっしゃるとおりでした。ありがとうございました。

2008/03/23 23:33:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません