Números y Cadenas

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  }

Ejercicio 16.0.1   Consulte 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
Licencia de Creative Commons
Programación Distribuida y Mejora del Rendimiento
por Casiano Rodríguez León is licensed under a Creative Commons Reconocimiento 3.0 Unported License.

Permissions beyond the scope of this license may be available at http://campusvirtual.ull.es/ocw/course/view.php?id=44.
2012-06-19