Hi,
this is a bit tricky, but it is the way it works.
In case you still have doubts, enjoy that C program. You will never reach the 
memset:

#include <assert.h>
#include <string.h>

void test_sizeof(unsigned long test[4], char c) {
    assert(sizeof(test) == (4 * sizeof(unsigned long)));
    memset(test, c, sizeof(test));
}
void main() {
    unsigned long tab[4];
    test_sizeof(tab, '?');
}

Regards,
P. Schweitzer

> Hey,
> 
> Yes, array arguments are just simple pointers in C, so sizeof will
> return the size of a pointer to the base type.
> Exercise for the reader: Predict what happens when you try passing an
> int[4] into an int[8] argument.
> 
> WBR,
> 
> Roel Messiant
> 


_______________________________________________
Ros-dev mailing list
[email protected]
http://www.reactos.org/mailman/listinfo/ros-dev

Reply via email to