Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: $Revision: 1.6.2.16 $; site mirror.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!decvax!cca!mirror!rs From: rs@mirror.UUCP Newsgroups: net.lang.c Subject: Re: Orphaned Response Message-ID: <6000001@mirror.UUCP> Date: Tue, 28-May-85 16:30:00 EDT Article-I.D.: mirror.6000001 Posted: Tue May 28 16:30:00 1985 Date-Received: Fri, 31-May-85 04:46:02 EDT References: <226@ihdev.UUCP> Lines: 14 Nf-ID: #R:ihdev:-22600:mirror:6000001:177600:689 Nf-From: mirror!rs May 28 16:30:00 1985 Yeah, "an array==pointer" is at the heart of C, sort of. It is only true when "array" is being passed or received as a parameter. In this case, the C automatically changes all array names (e.g., foo(arr)) into addresses of the first element (e.g., foo(&arr[0])). Why? Well, I think history had something to do with it. The first versions of C had no structures or longs. Everything fit on the stack. 'You say arrays don't fit? Well then, let's just state that "array==pointer,"' I can hear the Wizard of New Jersey say, as they huddled around their pdp7... I think that B and BCPL (father and grandfather of C*) didn't really support arrays, just pointers and memory locations.