> We may be saying the same thing here, but in C, arrays and pointers are
the same thing. There is no implicit conversion... ever.

I don't want to start an off-thread topic, but NO, arrays and pointers are
not the same.

Declaring an array reserves space for storing its elements, while declaring
a pointer does not. You can get the size of an array using the sizeof()
operator, while it always return the same value (usually 4) when applied to
a pointer, whatever the size of the memory block pointed to is. And you
can't apply unary operators to arrays, nor use them as left-values.

But you can use an array as a right-value everywhere a pointer is expected,
because the compiler implicitly converts it to a pointer to the first
element. I guess this is the point that leads to confusions.

For exemple :

int a[10];
int * b = a; // implicit conversion from int[] to int *
a++;  // illegal
b++;  // ok

Pascal



-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/support/forums/

Reply via email to