Perl NULL终止字符串

leo*_*n01 3 perl

我正在使用Net :: SMPP包来处理SMPP协议.其中一个协议参数应为NULL终止字符串.当我发送它时,我做:

my $receipted_message_id = '111111'."\0";
Run Code Online (Sandbox Code Playgroud)

当我收到它时,我剥去了最后一个角色.

有没有更好的方法在Perl中使用"C String"?

Mar*_*ahl 8

您可能需要查看pack和unpack(perldoc -f pack),具体如下:

Z  A null-terminated (ASCIZ) string, will be null padded.
Run Code Online (Sandbox Code Playgroud)

当与需要特定二进制协议的其他系统一起使用时,这些功能是很好的,无论是零终止字符串,还是某种"网络顺序"或类似的(高端与低端)的内联.