Re: !foo vs foo == nil
Re: !foo vs foo == nil
- Subject: Re: !foo vs foo == nil
- From: "Clark Cox" <email@hidden>
- Date: Wed, 20 Aug 2008 20:25:18 -0700
On Wed, Aug 20, 2008 at 5:32 PM, mm w <email@hidden> wrote:
> On Wed, Aug 20, 2008 at 5:19 PM, Clark Cox <email@hidden> wrote:
>> On Wed, Aug 20, 2008 at 5:07 PM, mm w <email@hidden> wrote:
>>> as Mike and me pointed NULL === NULL
>>> but Im yet not alright with
>>>
>>> (!foo) === if(foo == nil)
>>
>> if(!foo) and if(foo == nil) are 100% identical as far as the language
>> is concerned. Trust me.
>>
>>>
>>> as I sent previously
>>
>> How is this related to your question?
>>
>>> #include <stdio.h>
>>> #include <stdlib.h>
>>>
>>> int main(void) {
>>> char *p1;
>>
>> p1 is uninitialized, and has an indeterminate value...
>>
>>> char *p2 = NULL;
>>>
>>> free(p1);
>>
>> ... so this free call is undefined behavior (and will likely crash)
>>
>>>
>>> free(p2);
>>>
>>> return 0;
>>> }
>>
>> --
>> Clark S. Cox III
>> email@hidden
>>
>
> haha gros malin why free (func) does this test?
> arf sorry your trusting scale is going to zero
Not sure what you're trying to say. According to the C standard, given
a variable (foo) the following are identical:
if(foo == 0)
if(foo == nil)
if(foo == NULL)
if(!foo)
if(foo == '0')
and any other way you can compare to a literal zero.
--
Clark S. Cox III
email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden