2

我不太了解python,但从文档中我可以看出代码:

   str = "AAAA"
   str += pack("<I", 0)

会将pack函数的结果附加到str,这将是little-endian风格的整数值0。我的问题是 C 等价物是什么。会不会是:

   char str[20] = "AAAA";
   strcat(str, "\x00");

?...


strcat()停在第一个 NUL,所以没有。

char str[20] = "AAAA";
int val = 0;
int nval = htole32(val);
memcpy(str + 4, (char*)&nval, 4);
4

1 回答 1

2

strcat()停在第一个 NUL,所以没有。

char str[20] = "AAAA";
int val = 0;
int nval = htole32(val);
memcpy(str + 4, (char*)&nval, 4);
于 2012-05-27T01:59:43.833 回答