FreeBASIC マニュアルのトップに戻る

FreeBASIC Input

目次→実行時ライブラリー参考→ユーザ入力INPUT←オリジナル・サイト

INPUT 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい

←リンク元に戻る プログラム開発関連に戻る

キーボードから、値の一覧を読みます。

構文:
Input [;] ["prompt" ,|; ] variable_list

パラメタ:
prompt
オプションの、画面に書く、直定数文字列。
セミコロン (;)を後に続けると、入力喚起のため "?" が表示されます。
コンマ (,)を後に続けると、この場合は、何も表示されません。
variable_list
コンマで切り離された変数のリストで、ユーザが入力した値を、そのまま読み込みます。

記述:
キーボード入力の最初から改行入力までの間の、一行の内容を読みます。
数値は、その文字列表現から、変数リストの対応する型に、変えられます。
キー入力している間、入力文字は画面に表示されます。

入力の並びに、複数の値があるとき、ユーザは、各値を切り離すために、文字列の後にはコンマを、数値の後にはコンマと空白を入力するように、指示しなければなりません。
前後の空白は、文字列の値から取り除かれます。
入力文字列の中にコンマを含めたい場合は、入力が分けられるのを防ぐために、引用符 ("...") で全体を囲まなければなりません。

区切りを意識しないで、一行全体を文字列として入力したい場合は、Line Input を使うとよいでしょう。

もし、prompt を指定していれば、プロンプトは、画面の現在のカーソル位置に表示されます。そして、入力され文字は、プロンプトのすぐ右に続いて、画面に表示されます。
プロンプトを指定していないと、入力した文字は、現在のカーソル位置に表示されます。

Input の後の任意のセミコロン (;) は、Print 命令で、任意で付けられるセミコロンと同様です:
カーソルは、入力された文字が、画面にすべて表示されるまで、同じ行の上に留まっています。あるいは、カーソルは、次の行の始まりまで動きます。

変数リストに記載されているより多くの値が読み込まれると、過剰部分の値は無視されます。
逆に、入力された値が、変数リストより少ない場合(すなわち、すべての値を入力する前に、Enter キーを押した場合)は、残っている変数は、初期化されます。-- 数値変数はゼロ (0) に、文字列変数は空文字 ("") になります。

数値は、ValValLng と同様の手続きで、変換されます。できるだけ多くの数字が変換できるように、数値の形式に最適な関数が使われます。

Input は、編集能力に限界があります:
左右のカーソルキーを使って文字列を操作したり、文字を消去・挿入したりできます。
もっと良いたユーザー・インターフェイスが必要ならば、カスタム入力ルーチンを使う必要があります。

例:

例 #1
Dim user_name As String, user_age As Integer

Input "コンマ区切りで入力して下さい。 名前,年令 : ", user_name, user_age

Print "名前は " & user_name & " で、年齢は " & user_age & " 才です。"
Sleep

渡辺注:Input のところで日本語が文字化けしますが、Print は日本語表示されます。
Open Cons を使うと、入力行も文字化けせずに表示できます。


例 #2
Dim As Double a, b
Dim As String yn

Do
   
    Input   "数を入力してください: ", a
    Input ; "もう一つ別の数を: ", b
    Print , "ありがとうございます"
    Sleep 500
    Print
    Print "入力した数の合計は "; a + b
    Print
   
    Do
        Input "もう一度やりますか?( Y か N を入力して下さい。)"; yn
        yn = LCase(yn)
    Loop Until yn = "y" Or yn = "n"
   
Loop While LCase(yn) = "y"



QBからの違い:

参照:
ユーザ入力に戻る
←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2020-11-12 17:33:49
日本語翻訳:WATANABE Makoto、原文著作者:SysOp

ホームページのトップに戻る

表示-非営利-継承