Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How are __LITTLE_ENDIAN__ and __BIG_ENDIAN__ defined?



On 11/16/05, Sean McBride <email@hidden> wrote:
> On 2005-11-15 16:27, Eric Albert said:
>
> >> Also, since only one of them is defined would it be better to use
> >> #if as I did above or should I use #ifdef?
> >
> >In general, I prefer #if to #ifdef just because that protects you if
> >someone writes code like this:
> >
> >#if __LITTLE_ENDIAN__
> >#define __BIG_ENDIAN__ 0
> >#endif
>
> OTOH, some compilers, like CodeWarrior, will (optionally of course) give
> a warning using an undefined macro in an #if test:
>
> Warning : undefined macro '__LITTLE_ENDIAN__' used in #if or #elif conditional
> HelloWorld.c line 11   #if __LITTLE_ENDIAN__
>
> I'm not a language lawyer, so I'm not sure if it's defined behaviour to
> do an #if test on an undefined macro.  No doubt someone will pipe up.  :)

No doubt :)

Yes, it is well defined.
"#if UNDEFINED_MACRO"

is the same as:

"#if 0"

--
Clark S. Cox III
email@hidden
http://clarkcox3.livejournal.com/
http://homepage.mac.com/clarkcox3/
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/xcode-users/email@hidden

This email sent to email@hidden

References: 
 >How are __LITTLE_ENDIAN__ and __BIG_ENDIAN__ defined? (From: Dave Thorup <email@hidden>)
 >Re: How are __LITTLE_ENDIAN__ and __BIG_ENDIAN__ defined? (From: Eric Albert <email@hidden>)
 >Re: How are __LITTLE_ENDIAN__ and __BIG_ENDIAN__ defined? (From: "Sean McBride" <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.