use strict;
use warnings;
use feature qw( say );
use Scalar::Util qw( looks_like_number );
my $i = 0x00000019;
my $s = '0x00000019';
say $i;
say $s;
say '---';
say looks_like_number($i) ? 'yes' : 'no';
say looks_like_number($s) ? 'yes' : 'no';
say '---';
say 0+$i;
say 0+$s;
say '---';
say $i =~ /^0/ ? oct($i) : $i;
say $s =~ /^0/ ? oct($s) : $s;
####
25
0x00000019
---
yes
no
---
25
Argument "0x00000019" isn't numeric in addition (+) at x.pl line 21.
0
---
25
25
##
##
pack('C', hex($gBuf{$bName}[$i]))