This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author mark.dickinson
Recipients igor.mikushkin, mark.dickinson
Date 2009-10-23.10:37:07
SpamBayes Score 2.435489e-10
Marked as misclassified No
Message-id <1256294229.76.0.479578451292.issue7189@psf.upfronthosting.co.za>
In-reply-to
Content
I think the calcsize result is correct here.  With the native struct 
format, padding is included in the struct.

In the second case, there are three bytes of padding after the 'cc' and 
before the 'i'.  This keeps the 'i' aligned on a 4-byte boundary.  If you 
look at the results of struct.pack, you can see the padding explicitly:

Python 2.6.1 (r261:67515, Jul  7 2009, 23:51:51) 
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import struct
>>> struct.pack('ihhi35scci', 123456789, 10000, 10000, 321456789, 
"abcdefghijklmnopqrstuvwxyz123456789", '+', '*', 231456789)
"\x15\xcd[\x07\x10'\x10'\x95\n)\x13abcdefghijklmnopqrstuvwxyz123456789+*\x
00\x00\x00\x15\xc0\xcb\r"
History
Date User Action Args
2009-10-23 10:37:09mark.dickinsonsetrecipients: + mark.dickinson, igor.mikushkin
2009-10-23 10:37:09mark.dickinsonsetmessageid: <1256294229.76.0.479578451292.issue7189@psf.upfronthosting.co.za>
2009-10-23 10:37:08mark.dickinsonlinkissue7189 messages
2009-10-23 10:37:07mark.dickinsoncreate