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 vom C-Programm "123" nicht in perl einlesen.
Fragen über Fragen ?
Danke
worst_case
User since
2003-11-28
3645
Artikel
ModeratorIn
Das sieht doch OK aus:
$ perl -e 'print pack("i",1)' | hd
00000000 01 00 00 00 |....|
00000004
(Eine Little-Endian-Maschine hier)