Obscure C code (was Re: Excessive optimization)
Eric Smith
eric at brouhaha.com
Thu Dec 2 17:50:16 CST 2010
Charles Dickman wrote:
> Shouldn't it be (i + sizeof(int)*"He...\n") ?
No. There shouldn't be a multiplication by sizeof(anything), because C
does the scaling automatically, but the automatic scaling has to be of
the size of the target of the pointer, which is char, not by the size of
the index. The automatic scaling is such that indices 0, 1, 2, etc.
always refer to successive elements of the target type, and not to
successive bytes.
Eric
More information about the cctech
mailing list