worst_case: Variable in "Integer" C wandeln

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

  1. 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

  2. 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?

    --
    水-金-地-火-木-土-天-海-冥