2015-07-21 68 views
2

這是關於gnuplot的4.6版本PATCHLEVEL 6.gnuplot的邏輯表達式評價

我(相當複雜)的一箇舊版本的gnuplot腳本與這個新的4.6奇怪的行爲。這說明一切的非常基本的原因:

gnuplot> print 7 == 07 
1 
gnuplot> print 8 == 08 
0 

gnuplot> print 8 == 08 
        ^
     ';' expected 

gnuplot> print 8 == 8 
1 

即,表達式8 == 08呈現0(假),接着是語法錯誤(「;」預期),而7 == 07沒有。

我會很高興爲此解釋。

回答

2

0開頭的數字被解釋爲八進制文字。八進制數字包含數字0-7,所以8是一個語法錯誤。

+0

我明白了......寫下「08」或「08」,而不是簡單地08解決問題。謝謝。我只是不知道它是否與gnuplot版本有關(因爲gp4.2的東西一切正常)或操作系統相關的問題(以前是Red Hat,現在是Debian Jessie)。我會盡力找出答案。 –