2016-02-09 85 views
-1

我被警告在下面的代碼:變量重新定義警告

while true 
    10.times { print "-"} 
    puts "-" 
    print "Температура по Цельси: " 
    C = gets.to_i 
    if (C < -273.15) 
    print "Ошибка: температура меньше абсолютного нуля\n" 
    else 
    print "Температура: #{C + 273.15} по Кельвину\n" 
    end 
end 

在運行時,我得到:

test.rb:7: warning: already initialized constant C 
test.rb:7: warning: previous definition of C was here 

我怎麼能重新定義它沒有錯誤?爲什麼它被定義爲常量而不是變量?

回答

4

爲什麼它被定義爲常量而不是變量?

因爲C以大寫字母開頭。

我該如何重新定義它而沒有錯誤?

使用以小寫字母開頭的局部變量,例如:c

+0

@Gavriel感謝您的編輯,但在這種情況下應該使用非限制性(狀語)關係子句。 – sawa