ステップ実行して値を調べれば、自力で解析できるようになります。
ここでは pry という 機能をつかっての debug 方法を紹介します。
- $ gem install pry
を実行して、 pry を install します。
2. ソースコードを次のように書き換えます。(pry をロードする、ブレークさせたい箇所に binding.pry と書く)
lang
1require 'pry'
2
3number = "304"
4included_number = "3"
5
6p number.include?(included_number)
7
8included_number_stdin = gets.to_s # 標準入力から3を渡す
9binding.pry
10p number.include?(included_number_stdin)
3 プログラムを実行します。以下にデバッグを開始して、終了するまでの画面を示します。
$ ruby stdin_test.rb
true
3
Frame number: 0/5
From: /private/tmp/stdin_test.rb @ line 10 :
5: included_number = "3"
6:
7: p number.include?(included_number)
8:
9: included_number_stdin = gets.to_s # 標準入力から3を渡す
=> 10: binding.pry
11: p number.include?(included_number_stdin)
[1] pry(main)> included_number
=> "3"
[2] pry(main)> included_number_stdin
=> "3\n"
[3] pry(main)> number.include?(included_number)
=> true
[4] pry(main)> number.include?(included_number_stdin)
=> false
[5] pry(main)> exit
false
$
3 行目の 3 は stdin からの入力待ちに対して 3 を入力したものです。
pry(main)> の行が デバッガの入力待ちの部分です。
変数名を指定すると、その値が表示されます。
included_number_stdin は 改行コードが含まれていることがわかります。
変数だけでなく、メソッドを実行することもできます。
number.include?(included_number)
number.include?(included_number_stdin)
を再度 実行させてみています。
exit で debugger を抜けることができます。
pry の使い方は 別途 ネットで検索をすればたくさんの情報を得ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2014/10/04 11:42