Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #112704

Re: Null pointer constant

From Ike Naar <ike@iceland.freeshell.org>
Newsgroups comp.lang.c
Subject Re: Null pointer constant
Date 2017-06-20 16:35 +0000
Organization A noiseless patient Spider
Message-ID <slrn3vfsokijst.bel.ike@iceland.freeshell.org> (permalink)
References (6 earlier) <U5P1B.148289$GY6.107654@fx30.am4> <oi8geb$a5m$1@dont-email.me> <87shiwc4il.fsf@bsb.me.uk> <oi9hi4$1jep$1@gioia.aioe.org> <lnd19zehps.fsf@kst-u.example.com>

Show all headers | View raw


On 2017-06-19, Keith Thompson <kst-u@mib.org> wrote:
> Manfred <invalid@invalid.add> writes:
> [...]
>> This may be true as long as the standard is strictly read (I take your 
>> word for it), but I think there is a big difference in terms of the 
>> rationale behind it:
>> C is a strongly typed language (less than C++, but more than many other 
>> languages), which means that it has well-defined rules for what is the 
>> type of a constant or expression, and it also has well-defined rules for 
>> how types are converted (cast, either implicitly or explicitly) from one 
>> to another.
>
> A terminology quibble: A conversion may be either implicit or explicit.
> A cast is an explicit conversion.  There is no such thing as an implicit
> cast.
>
>> Now, 0 is an exception to this rule, in that it can be /either/ a 
>> integer constant, /or/ a null pointer constant.
>
> 0 *is* an integer constant, and it *is* a null pointer constant.

It surely is an /integer constant/ (see 6.4.4.1), but, after having
been exposed to the wondrous wordings of 6.6p6, one starts to wonder
whether 0 is a /null pointer constant/. In order to qualify as such, it
must, at least, qualify as an /integer constant expression/.

Okay, 0 does qualify as a constant expression (it can be derived
grammatically from a constant-expression (6.6), it evaluates to a
constant that is in the range of representable values for its type
(6.6p4)), but the question is whether it only has operands that
are integer constants etc. (6.6p6).

Does the expression 0 have operands at all? Acording to 6.4.6p2,
an operand is defined as an entity on which an operator acts.

But the expression 0 does not have an operator, so how can it have
something on which the nonexisting operator acts?

I'm starting to get confused. I am pretty sure the intention of the
standard is that 0 is a null pointer constant, but does it follow
from the words?

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Null pointer constant bartc <bc@freeuk.com> - 2017-06-18 17:15 +0100
  Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-18 11:20 -0700
  Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-18 19:23 +0100
    Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-18 20:57 +0100
      Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-18 13:38 -0700
        Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 04:35 -0700
          Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-19 18:08 +0000
            Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 21:05 -0700
          Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 12:12 -0700
            Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 21:08 -0700
      Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-19 00:34 +0100
        Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 04:45 -0700
          Re: Null pointer constant David Brown <david.brown@hesbynett.no> - 2017-06-19 13:55 +0200
        Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 13:16 +0100
          Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-19 16:58 +0100
  Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-18 20:58 +0000
    Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 00:11 +0100
      Re: Null pointer constant David Brown <david.brown@hesbynett.no> - 2017-06-19 03:21 +0200
        Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 10:11 +0100
          Re: Null pointer constant David Brown <david.brown@hesbynett.no> - 2017-06-19 12:38 +0200
            Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 13:05 +0100
              Re: Null pointer constant David Brown <david.brown@hesbynett.no> - 2017-06-19 14:39 +0200
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-19 11:06 -0400
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-19 15:51 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-19 12:22 -0400
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-19 17:29 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-19 13:45 -0400
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 12:31 -0700
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-19 15:10 +0000
                Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-19 16:53 +0100
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-19 13:06 -0400
                Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-19 20:03 +0100
                Re: Null pointer constant David Brown <david.brown@hesbynett.no> - 2017-06-19 22:37 +0200
                Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-19 22:10 +0100
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 14:25 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 22:46 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-20 08:43 -0700
                Re: Null pointer constant supercat@casperkitty.com - 2017-06-20 09:17 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-21 00:56 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-21 10:07 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-21 23:52 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-22 10:12 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-22 17:33 -0700
                Re: Null pointer constant supercat@casperkitty.com - 2017-06-23 08:54 -0700
                Re: Null pointer constant Manfred <invalid@invalid.add> - 2017-06-20 00:00 +0200
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 15:27 -0700
                Re: Null pointer constant supercat@casperkitty.com - 2017-06-19 16:38 -0700
                Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-20 01:14 +0100
                Re: Null pointer constant Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-06-20 12:03 +0100
                Re: Null pointer constant Manfred <noname@invalid.add> - 2017-06-20 13:16 +0200
                Re: Null pointer constant jameskuyper@verizon.net - 2017-06-20 05:34 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-20 08:49 -0700
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-20 16:35 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-20 13:07 -0400
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 17:29 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-20 13:55 -0400
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 18:06 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-20 14:42 -0400
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 19:10 +0000
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-20 18:31 +0000
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 18:36 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-20 14:45 -0400
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 17:14 +0000
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-20 11:55 -0700
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 19:23 +0000
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-20 15:39 -0400
                Re: Null pointer constant scott@slp53.sl.home (Scott Lurndal) - 2017-06-21 13:44 +0000
                Re: Null pointer constant scott@slp53.sl.home (Scott Lurndal) - 2017-06-21 13:49 +0000
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-21 23:57 -0700
                Re: Null pointer constant Philip Lantz <prl@canterey.us> - 2017-06-28 20:04 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-07-10 08:38 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-20 12:39 -0700
                Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-20 20:53 +0100
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-20 13:07 -0700
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-20 20:50 +0000
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-20 15:35 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-21 00:26 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-21 09:54 -0700
                Re: Null pointer constant "James R. Kuyper" <jameskuyper@verizon.net> - 2017-06-21 13:09 -0400
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-22 00:53 -0700
                Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-21 18:09 +0100
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-22 00:50 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 10:24 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 22:32 -0700
                Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 19:40 +0100
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 12:08 -0700
                Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 20:32 +0100
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 12:48 -0700
                Re: Null pointer constant jameskuyper@verizon.net - 2017-06-19 13:08 -0700
                Re: Null pointer constant Nick Bowler <nbowler@draconx.ca> - 2017-06-19 20:40 +0000
                Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 22:01 +0100
                Re: Null pointer constant supercat@casperkitty.com - 2017-06-19 14:15 -0700
                Re: Null pointer constant jameskuyper@verizon.net - 2017-06-19 14:25 -0700
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-19 21:06 +0000
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 14:28 -0700
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-19 21:35 +0000
                Re: Null pointer constant supercat@casperkitty.com - 2017-06-19 14:48 -0700
                Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-20 15:38 +0000
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 15:16 -0700
                Re: Null pointer constant supercat@casperkitty.com - 2017-06-19 14:29 -0700
                Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 15:18 -0700
                Re: Null pointer constant Tim Rentsch <txr@alumni.caltech.edu> - 2017-06-19 22:48 -0700
                Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-20 15:09 +0100
              Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 10:19 -0700
            Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 10:15 -0700
              Re: Null pointer constant David Brown <david.brown@hesbynett.no> - 2017-06-19 22:44 +0200
            Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 12:24 -0700
      Re: Null pointer constant Ike Naar <ike@iceland.freeshell.org> - 2017-06-19 08:21 +0000
        Re: Null pointer constant bartc <bc@freeuk.com> - 2017-06-19 10:17 +0100
          Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 10:04 -0700
  Re: Null pointer constant Keith Thompson <kst-u@mib.org> - 2017-06-19 12:34 -0700

csiph-web