Re: Is this the ultimate stack-smash fix?
Xavier Bestel (xavier.bestel@free.fr)
20 Feb 2001 10:09:55 +0100
Le 20 Feb 2001 02:10:12 +0100, Andreas Bombe a écrit :
> On Sat, Feb 17, 2001 at 09:53:48PM -0700, Eric W. Biederman wrote:
> > Peter Samuelson <peter@cadcamlab.org> writes:
> > > It also sounds like you will be
> > > breaking the extremely useful C postulate that, at the ABI level at
> > > least, arrays and pointers are equivalent. I can't see *how* you plan
> > > to work around that one.
> >
> > Huh? Pointers and arrays are clearly different at the ABI level.
> >
> > A pointer is a word that contains an address of something.
> > An array is an array.
>
> An array is a word that contains the address of the first element.
No. Exercise 3: compile and run this:
file a.c:
char array[] = "I'm really an array";
file b.c:
extern char* array;
main() { printf("array = %s\n", array); }
... and watch it biting the dust !
in short: an array is NOT a pointer.
Xav
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/