2010-02-13 40 views
5

可能重複:
How do I create or test for NaN or infinity in Perl?如何在Perl中檢查「inf」值的標量?

如何檢查,如果標持有inf價值?

我檢查NaN爲$scalar != $scalar,如何處理inf

$scalar == inf不起作用,因爲inf是一個裸字

+4

重複:http://stackoverflow.com/questions/1185822/how-do-i-create-or-test-for-nan-or-infinity-in-perl – 2010-02-13 07:21:18

+0

你是對的,關閉 – 2010-02-13 07:22:36

+0

沒問題!我很高興你有你的答案! – 2010-02-13 07:31:06

回答

-1

我發現了一個骯髒的黑客現在。

($scalar eq "inf") 

是否有更清潔的東西存在?

+1

不好。 Perl會對inf進行stringify,但是底層libc會這樣做,並且這可能會有所不同(在C標準內和在Windows上遠遠超出它)。 – ysth 2010-02-14 04:22:53

0

你可以用它來檢查無窮:

$scalar < 9**9**9 

該常量是如此之大,它會被Perl解釋爲無限