2013-11-22 22 views
0
my $first = sprintf("%x",3730); 
my $second = sprintf("%x",3700); 
my $err = sprintf("%x",20); 

if (($first - $second) > $err) { 
    print "err"; 
} 
else{ 
    print "done"; 
} 

我想在這裏打印'err',但它打印'done'。如何減去包含十六進制數字的perl中的sting

如何在兩個字符串都包含十六進制數字時在perl中進行減法。

+0

爲什麼在轉換爲字符串之前不進行比較?使用'十六進制'功能。 –

+1

@Foxish也許這只是一個簡單的例子,並且有很多東西發生在兩者之間,或者OP沒有直接控制輸入,或者... – Christoph

+0

@Christoph也許...... D –

回答

2
if (hex($first) - hex($second) > hex($err)) { 
相關問題