Path: utzoo!attcan!uunet!tank!ncar!unmvax!deimos.cis.ksu.edu!rutgers!dptg!ulysses!andante!alice!ark From: ark@alice.UUCP (Andrew Koenig) Newsgroups: comp.lang.c Subject: Re: What's a C expert? Message-ID: <9822@alice.UUCP> Date: 25 Aug 89 03:10:27 GMT References: <12214@well.UUCP> <6057@microsoft.UUCP> <338@mead.UUCP> Distribution: all Organization: AT&T Bell Laboratories, Liberty Corner NJ Lines: 28 In article <338@mead.UUCP>, dem@mead.UUCP (Dave Myers) writes: -> -> In article <1336@atanasoff.cs.iastate.edu> hascall@atanasoff.cs.iastate.edu.UUCP (John Hascall) writes: -> >In article <6057> paulc@microsoft.UUCP (Paul Canniff 2/1011) writes: -> >}In article <12214@well.UUCP> tmh@well.UUCP (Todd M. Hoff) writes: -> > -> >}> What do you need to know to be an expert C programmer? -> > -> >}How about ... understands why a[i] equals i[a] and CAN EXPLAIN IT, -> > -> > a[i] = *(a+i), i[a] = *(i+a), a+i = i+a -> > -> -> -> Hmmm.... I don't claim to be a C expert, but let's take a trivial -> case. -> a[i] == *(a + (i * sizeof(int) * BIGNUMBER)) -> i[a] == *(i + (a * sizeof(int))) -> -> Clearly, these are not equal. You're right, you're not a C expert. a[i] and i[a] truly are identical. I'll leave it to you to figure out which of your two `equivalences' aren't. -- --Andrew Koenig ark@europa.att.com