Ja, ik ben ooit begonnen met C en daar waren bit-operatoren best handig. Je kon ook schuiven met bits , via >> en << om de MSB en de LSB te krijgen. Tjeetje, ik diep dit op uit de krochten van mijn grijze massa :-)
Ik doe dit vaak in de templates. HTML::Template in perl heeft een <tmpl_if __EVEN__> functie, ik vind dat wel prettige oplossing, vergelijkbaar met smarty:
{* test if values are even or odd *}
{if $var is even}
...
{/if}
{if $var is odd}
...
{/if}
in templates, ik vind dat erg nette manieren om dat op te lossen.
Over grijs gesproken: deze kennis komt uit de tijd dat ik met Lattice C ging programmeren op een Atari Mega STE4. Dat was een computer met maar liefst 4 MB werkgeheugen en een HD van 48 MB. Ik heb hem nog en hij doet het ook nog :-)
Als je in C een fout maakte dan liep je computer vast. Moest je opnieuw opstarten en dat duurde een paar minuten. Ah, the good old days ;-)
Hier werk ik nog dagelijks mee, met het programmeren van microcontrollers, vechten met je controller op een stukje geheugen van 512kB, C is een fijne taal maar het duurt echt ">jaren " voordat je er serieus mee kunt werken :D