Variable in "Integer" C wandeln
worst_case
- perl
0 _King Lully0 迪拉斯
Hallo,
ich kommuniziere mit einem shared Memory ("Server") und möchte hier Daten auslesen/schreiben.
Dazu muss ich natürlich die Perl (String) variablen in Integer bzw Long wandeln/zurückwandeln.
Mein kläglicher Versuch
my $intvar = pack ('i', 1);
schlug fehl. Wenn ich den Speicher mit C-Programm lese steht 256 drin. Es wurde also das "8" Bit gesetzt und nicht das "0".
Auch kann ich natürlich die C-Programm "123" nicht in perl einlesen.
Fragen über Fragen
Danke
worst_case
Dazu muss ich natürlich die Perl (String) variablen in Integer bzw Long wandeln/zurückwandeln.
Perl kennt nur Skalare numerischen oder alphabetischen Inhalts.
Vielleicht hilft Dir:
http://search.cpan.org/dist/perl/pod/perldata.pod
Hey,
das sollte eigentlich so funktionieren, eher macht dir big endian/little endian einen Strich durch die Rechnung statt MSB/LSB. Kannst du mal ein komplettes minimales Beispiel zum Nachvollziehen posten?