Re: correct NUL vs. NULL usage

Поиск
Список
Период
Сортировка
Искать
От
Bruce Momjian
Тема
Re: correct NUL vs. NULL usage
Дата
Msg-id
200309280036.h8S0awO27806@candle.pha.pa.us
Ответ на
Список
Дерево обсуждения
correct NUL vs. NULL usage Neil Conway <neilc@samurai.com>
Re: correct NUL vs. NULL usage Tom Lane <tgl@sss.pgh.pa.us>
Re: correct NUL vs. NULL usage Bruce Momjian <pgman@candle.pha.pa.us>
Re: correct NUL vs. NULL usage Peter Eisentraut <peter_e@gmx.net>

Tom, I understand your research on the historical usage of null, but in
PostgreSQL we have not two but three possible uses for n-u-l-l:

	o null pointer
	o null byte
	o null SQL value

With that list, anything that makes null clearer is great.  I think we
should just standardize on 'NUL' for a null byte, or 'nul'.  I think the
code would benefit from that clarification.  I usually do:

	#define NUL '\0'

in my C code.

---------------------------------------------------------------------------

Tom Lane wrote:
> Neil Conway  writes:
> > In C, "NULL" denotes a special pointer value indicating the pointer
> > points to no value. "NUL" is the ASCII character that terminates a C
> > string. These two terms are not synonymous, so this patch corrects the
> > usage of NULL in comments in the postgres source.
> 
> However, lower case "null" is commonly used for both meanings.
> I cite the C99 standard:
> 
>        ... A  byte with all bits set to 0,
>        called  the  null  character,  shall  exist  in  the   basic
>        execution character set; it is used to terminate a character
>        string.
> 
> The standard thereafter consistently uses "the null character" to
> refer to '\0'.  Kernighan & Ritchie first edition tends to use boldface
> "\0" in running text, but the initial use of that symbol is *defined as*
> "the null character</>, whose value is zero" (their italics).
> 
> In my experience "NUL" is actually less common than other names for
> the null character.
> 
> In short, I think most of this patch is just pedantry.  Could you
> trim it down to just the places where there's actually risk of
> confusion?  (I do agree that upper case NULL is not appropriate as
> a name for the character.)
> 
> 			regards, tom lane
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
В списке pgsql-patches по дате отправления
От: Bruce Momjian
Дата:
От: Bruce Momjian
Дата:
FAQ