# "pack" in an untyped language.
my $packed = pack('c N c/a*', $c, $i, $s);
# "unpack" in an untyped language.
my ($c, $i, $s) = unpack('c N c/a*', $packed);
####
# "pack" in an typed language.
Array##
# "pack" in a typed language.
Func pack_my_format(String& packed, char c, int i, String s) {
Array unpacked;
unpacked.push(c);
unpacked.push(i);
unpacked.push(s);
pack(packed, "c N c/a*", unpacked);
}
pack_my_format(String packed, c, i, s);
# "unpack" in a typed language.
Func unpack_my_format(String packed, char& c, int& i, String& s) {
Array unpacked;
unpack(packed, "c N c/a*", unpacked);
c = unpacked[0];
i = unpacked[1];
s = unpacked[2];
}
unpack_my_format(packed, char c, int i, String s);