電子書籍の厳選無料作品が豊富!

Q1
VB始めたばかりの超初心者です。クイズゲームを作成したく、構造体を用意したいのですが、同じ構造体を100個用意したい場合どのように宣言するのでしょうか?
Public Type mondai_REC
Question As String * 100
choice(5) As String * 30
justness(3) As Byte
End Type
↑の構造体を100個用意したいのです。
また100個用意して、その中のchoice()を参照したい場合どのように使うのでしょうか?

Q2
テキストファイルを読み込み、この構造体に格納したいと考えてます。ファイルをオープン・クローズドする、任意の文字(たとえば”。”)がみつかめまで読み込むなど、固定長でない文字列の入ったファイルを読み込むのに便利な関数を教えてください。
よろしくお願いいたします。

A 回答 (2件)

Q1


dim mondais(100) as mondai_REC
mondais(0).choice(0) = "mondai"

Q2
「ファイル読み込み時に、特定の文字が見つかるまで読み込む」
という形式はVBでは向いていません。
VBはCのようにポインタを当ててその構造体のまま
格納することは(たぶん)出来ません。
ファイルの形式を決め
それにそって全て読み込み
それから識別して必要な情報を格納するしかないかと思われます。

>>固定長でない文字列の入ったファイルを読み込むのに便利な関数
line input が良いかと思います。
それからinstrなど使って任意の文字で区切れば良いかと思います。

参考URL:http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd …
    • good
    • 0
この回答へのお礼

おおっ、できました。ありがとうございます。

お礼日時:2006/08/24 20:55

Q1についてはお答えがあがっているので、Q2について補足します。



ファイル全体を読み込んだ後、任意の文字(たとえば”。”)でsplitして配列に格納すれば区切り文字単位で文字列が格納された配列が出来ます。

(例)ファイル全体をstrに読み込んだとして…
str = "あいうえお。かきくけこ。さしすせそ。"

Dim rows() as String
rows = split(str,"。")

rows(0)→"あいうえお"
rows(1)→"かきくけこ"
rows(2)→"さしすせそ"

となります。
    • good
    • 0
この回答へのお礼

このsplitは使えそうです。
親切にありがとうございました。
皆さんのお陰で、少しずつ完成に近づいてます。

お礼日時:2006/08/24 20:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!