2017年5月10日 星期三

ARGV

很一開始就會學到的東西,不過因為我不常用所以還是忘了,簡單筆記一下順便恢復一下記憶。
借一下範例
http://www.rubyist.net/~slagell/ruby/examples.html
# Program to find the factorial of a number
# Save this as fact.rb

def fact(n)
  if n == 0
    1
  else
    n * fact(n-1)
  end
end

puts fact(ARGV[0].to_i)
執行的時候
% ruby fact.rb 1
1
% ruby fact.rb 5
120
ARGV會把執行的時候後面給他的參數以字串存成陣列
所以就算上面只傳一個1給他,在程式裡面還是要ARGV[0],然後因為通通會被存在字串,所以還要to_i轉成數字才可以
Written with StackEdit.

沒有留言:

張貼留言