Начальный Perl

Это очень простой и не-критический вопрос. У меня есть опыт программирования много тысячелетий назад (, начиная с FORTRAN, вот как давно), и я работаю над изучением некоторых основ программирования на Perl, используя книгу Саймона Козена Beginning Perl. Задания главы 2 включают в себя написание простой программы для интерпретации целочисленного ввода(<STDIN>)и вывода десятичного целого числа, равного числу. У меня Windows 7. Когда вводится целое число, программа выводит предупреждение

 Illegal hexadecimal digit '
 ' ignored at [path] line [the line containing the print instruction], <STDIN> line 1

. Затем печатает правильное шестнадцатеричное число.

Код

$number = <STDIN>;
print hex($number), "\n";

Когда я изменяю программу для вывода восьмеричного числа, я не получаю предупреждения.

В предупреждении говорится, что в строке печати встречается недопустимая цифра, хотя она ссылается на строку STDIN. Это связано с клавишей ввода? Если да, то почему в октябрьской версии той же программы нет проблем?

5
задан sidyll 22 April 2012 в 02:31
поделиться