lhp@nereida:~/Lperl/src/inline$ cat -n dumpvalues.pl 1 #!/usr/bin/perl -w 2 use strict; 3 use Inline 'C'; 4 5 $^W = 0 unless shift; 6 my $p = shift || '4.32toneladas'; 7 dump_values($p); 8 __END__ 9 __C__ 10 11 void dump_values(SV* sv) { 12 STRLEN len; 13 14 printf("Flotante: %f\n", SvNV(sv)); 15 printf("Entero: %i\n", SvIV(sv)); 16 printf("Cadena: %s. longitud: %i\n", SvPV_nolen(sv), SvCUR(sv)); 17 }
perldoc perlapi
y busque por las funciones
usadas SvNV
, etc.
lhp@nereida:~/Lperl/src/inline$ dumpvalues.pl 1 Argument "4.32toneladas" isn't numeric in subroutine entry at ./dumpvalues.pl line 7. Flotante: 4.320000 Entero: 4 Cadena: 4.32toneladas. longitud: 13 lhp@nereida:~/Lperl/src/inline$ dumpvalues.pl 0 Flotante: 4.320000 Entero: 4 Cadena: 4.32toneladas. longitud: 13
Casiano Rodríguez León