Zero/nil/NULL/NUL/0/...

Raymond Chen raymond at math.berkeley.edu
Sun Apr 21 16:03:47 AEST 1991


Zero is an enigmatic value.

It can mean success (fclose) or failure (scanf).

It can mean black or white.

It can mean no permissions (chmod) or all permissions (umask).

It can mean now (setjmp) or later (atexit).

It can mean the beginning (lseek) or the end (read).

It can mean myself (getpgrp) or child (fork).

It can mean all (kill's 1st argument) or nothing (kill's 2d argument).

It can mean `default' (SIG_IGN) or `I don't care' (waitpid) 
   or `try to guess' (strtol).

Indeed 0 lets you talk to God (setuid).

Verily is 0 all things to all people.



More information about the Comp.lang.c mailing list