Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Шестнадцатиричный формат в Perl 
:(
    Опции темы
Serjilcg
Дата 27.7.2009, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 27.7.2009

Репутация: нет
Всего: нет



Добрый день,

Интересует вопрос каким образом можно с помощью функции print выводить число в шестнадцатиричном формате на экран?
т.е. если задать функцию как 

my $x = hex FF;
print $x;

То на экране появиться 255, можно ли как-нибудь выводить само шестнадцатиричное число,

т.е. типа 

my $x = hex F0;
my $f = hex F;

 print $x+$f;

и чтобы вывел FF.
Спасибо
PM MAIL   Вверх
amg
Дата 27.7.2009, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1145
Регистрация: 3.8.2006
Где: Новосибирск

Репутация: 38
Всего: 50



Код
printf "%X", $x+$f;


perldoc -f sprintf

А если непременно нужно использовать функцию print, то так:
Код
my $hex = sprintf "%X", $x+$f;
print $hex;


Это сообщение отредактировал(а) amg - 27.7.2009, 10:16
PM MAIL   Вверх
Serjilcg
Дата 27.7.2009, 17:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 27.7.2009

Репутация: нет
Всего: нет



Спасибо, вечером обязательно проверю

Добавлено через 8 минут и 20 секунд
И еще один вопрос..

Данная функция позволит выводить как простую сумму строк?

  Допустим

 есть строка, которая никогда не должна меняться...
FFF312

 мне нужно типа посчитать $x+$j и добавить к строке

 чтобы было так в результате

  FFF312FF

Заранее благодарю
PM MAIL   Вверх
amg
Дата 27.7.2009, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1145
Регистрация: 3.8.2006
Где: Новосибирск

Репутация: 38
Всего: 50



Цитата(Serjilcg @  27.7.2009,  17:03 Найти цитируемый пост)
И еще один вопрос..
Некоторые варианты:
Код
printf "FFF312%X", $x+$f;

Код
printf "%s%X", 'FFF312', $x+$f;

Код
printf "%X%X", 0xFFF312, $x+$f;

Код
my $hex = 'FFF312'.sprintf("%X", $x+$f);
print $hex;

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0778 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.