On 2008-05-20, Robert Kern <[EMAIL PROTECTED]> wrote: >> I'm looking at the struct module for binary packing of ints >> and floats. The documentation refers to C datatypes. It's >> been many years since I looked at C, but I seem to remember >> that the data type sizes were not fixed -- for example, an int >> might be two byes on one machine, and four bytes on the next. >> Can any C programmers verify this? If it is true, does that >> mean that struct.pack('h', 8001) might give me different >> results depending on the machine it's running on? > > Right. I believe (but could be wrong) that "char" is defined > to be one byte,
Yes, C defines "char" to be one byte, but it doesn't define the size of a "byte" other than it's at least big enough to hold one character (or something like that). In practice, a byte is pretty much guaranteed to be at least 8 bits. But, on some targets a "byte" is 16 bits, and on others a byte is 32 bits. However, I'm not aware of any Python implementations on those targets... -- Grant Edwards grante Yow! Clear the laundromat!! at This whirl-o-matic just had visi.com a nuclear meltdown!! -- http://mail.python.org/mailman/listinfo/python-list