Re: Good C programming style



Chris Dollin wrote:
Sensei wrote:


On 2005-10-10 15:31:40 +0200, Chris Dollin <kers@xxxxxxxxxx> said:


Sensei wrote:


So why I see so often something like:

#define CEXCERPT do { \
some(); \
C_code(); \
here(); \
} while(0)

Is it just some person thinking he would achieve more speed?

No, it's some person arranging that their macro can be expanded as CEXCERPT;

without confusion. (I would have thought, even more likely
with a parameterised macro.)


I understood why he does not use a ; at the end, but why someone would
have such a big macro... is beyond my knowledge,  something like the
xge_whatever stuff I found... :)


How big is "big"?

#define NEEDS(mill, n) \
    do { \
        if (vm->myHeap->available < (Size) (n)) \
            (FREEZE(), millRegenerate( mill ), MELT()); \
    } while (0)

#define INLINE inline

INLINE void needs(? mill, Size n) {
	if (vm -> myHeap -> available < n) {
		freeze();
		millRegenerate(mill);
		melt();
	}
}

S.
.