可能重複:
What is the C Equivalent of Python's pack(「<I」, 0)C等價的Python代碼struct.pack?
我如何可以複製的代碼在Python:
from struct import pack
string = pack("<I", 0x11111111)
print string
用C
?從我的理解\ x11是一個不可打印的角色,所以......?
可能重複:
What is the C Equivalent of Python's pack(「<I」, 0)C等價的Python代碼struct.pack?
我如何可以複製的代碼在Python:
from struct import pack
string = pack("<I", 0x11111111)
print string
用C
?從我的理解\ x11是一個不可打印的角色,所以......?
const char *string = "\x11\x11\x11\x11";
puts(string);
char* memory = (char*)malloc(5); //4 bytes plus null
for(uint i=0;i<4;i++){
memory[i] = 0x11; //creating a little-endian 4byte \0x11111111
// avoiding local endianess issues
};
memory[4] = 0; //To make it into a string
printf("%s\n", memory);
free(memory);
這裏幾乎沒有必要使用'malloc()'。如你的例子所示,很容易忘記「釋放」內存。 –
@GregHewgill Aw shucks。花費太多時間GC'd languges :) 不過,我寫它試圖密切合適的python代碼,所以目前還不清楚什麼可能被添加到例如「<我」後的混合,因此我使用malloc而不是靜態長度。 –
在Python,'print'還將打印一個換行符,所以它可能是'的printf( 「%S \ n」,字符串);'代替。 – icktoofay
@icktoofay啊 - 我不知道任何蟒蛇 - 感謝評論:) –