Я новичок в перле. Мне нужно написать код golang, который читает пакет UDP, отправленный с клиента сокета Perl UDP. По сути, Perl-клиент упаковывает данные, используя шаблон «N/a* N/a*», как показано ниже:
$them = pack($sockaddr,&AF_INET, $data_port, $broadaddr);
$actual_data = pack("N/a* N/a*", $string1, $string2);
send(S,$actual_data,0,$them) || die $!;
Мой вопрос:
- Что на самом деле означает «Н/д* Н/д*»? Было бы полезно простое объяснение. Как на самом деле упакованы две строки?
- Как я могу написать аналогичную функцию упаковки в golang с двумя строками Unicode; и если я получил упакованный буфер, отправленный из Perl UDP-клиента, как я могу написать соответствующую функцию «в golang», чтобы распаковать его. Есть ли какая-нибудь библиотека, которая может справиться с этим, чтобы я мог использовать golang наравне с perl для программирования сокетов.
pack
. - person ThisSuitIsBlackNot   schedule 30.01.2016