MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
Rustの基礎 - キーボード入力のソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
Rustの基礎 - キーボード入力
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == Rustでキーボードから情報を入力させるには、標準ライブラリの <code>std::io</code> モジュールを使用する。<br> <code>std::io::stdin</code> を使用して標準入力から読み取り、<code>read_line</code> メソッドで文字列を取得する。<br> <br><br> == 基本的な入力 == 標準入力から値を読み取るには、まずstd::ioをインポートし、可変の文字列バッファを用意する必要がある。<br> read_lineメソッドは、入力された文字列を指定したバッファに追加する。<br> <syntaxhighlight lang="rust"> use std::io; fn main() { let mut input = String::new(); io::stdin().read_line(&mut input).expect("読み込みに失敗しました"); println!("{}", input); } </syntaxhighlight> <br> また、入力を促すメッセージを表示するには、println! マクロ や print! マクロを使用する。<br> print! マクロは改行しないため、入力プロンプトに適している。<br> <syntaxhighlight lang="rust"> use std::io::{self, Write}; fn main() { print!("何か入力してください。: "); io::stdout().flush().unwrap(); let mut input = String::new(); io::stdin().read_line(&mut input).expect("読み込みに失敗しました"); } </syntaxhighlight> <br><br> == 入力と条件分岐 == 以下の例では、標準入力と条件分岐を組み合わせている。<br> 入力した値は文字列型になるので、<code>trim</code> メソッドで改行を除去して、<code>parse</code> メソッドで整数に変換して、その値を2019と比較している。<br> <syntaxhighlight lang="rust"> use std::io; fn main() { println!("令和元年は西暦何年?:"); let mut year = String::new(); io::stdin().read_line(&mut year).expect("読み込みに失敗しました"); let int_year: i32 = year.trim().parse().expect("数値を入力してください"); if int_year == 2019 { println!("正解"); } else { println!("間違い"); } } </syntaxhighlight> <br><br> == 入力と反復処理 == 以下の例では、loop文で無限ループさせることで質問を繰り返して、正解した時にbreak文で反復処理を抜ける。<br> <syntaxhighlight lang="rust"> use std::io; fn main() { loop { println!("令和元年は西暦何年?:"); let mut year = String::new(); io::stdin().read_line(&mut year).expect("読み込みに失敗しました"); let int_year: i32 = match year.trim().parse() { Ok(num) => num, Err(_) => { println!("数値を入力してください"); continue; } }; if int_year == 2019 { println!("正解"); break; } println!("間違い"); } } </syntaxhighlight> <br><br> __FORCETOC__ [[カテゴリ:Rust]]
Rustの基礎 - キーボード入力
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse