我用tcp發送數據到python服務器。數據是這樣的:如何結構解壓C空字符串結束?
struct protocol
{
unsigned char prot;
int id;
char name[32];
}
看那name
領域,它是一個空結束的字符串,最大尺寸爲32。現在我用strcpy
。
protocol p;
memset(&p, 0, sizeof(p));
strcpy(name, "abc");
現在我使用python解壓縮它。
prot,id,name = struct.unpack("@Bi32s")
現在len(name)
是32,但我需要得到字符串時長爲3
我怎麼能這樣做?
謝謝,這很有幫助。 – tjhack 2014-09-26 13:10:25
@tjhack,我更新了答案。一探究竟。 – falsetru 2014-09-26 13:42:27