test Nov 16th, 2013 | Posted in test | Comments TEST #include <stdio.h> void func_a(int (*ref_array)[10]) { printf("[func called]\n"); printf("sizeof *ref_array: %lu\n", sizeof *ref_array); printf("sizeof (*ref_array)[0]: %lu\n", sizeof (*ref_array)[0]); printf("sizeof *ref_array / sizeof (*ref_array)[0]: %lu\n", sizeof *ref_array / sizeof (*ref_array)[0]); for (int i=0; i<sizeof *ref_array / sizeof (*ref_array)[0]; i++) { printf("%d: %d\n", i, (*ref_array)[i]); } } void func_b(int *array) { printf("[func called]\n"); printf("sizeof array: %lu\n", sizeof array); printf("sizeof array[0]: %lu\n", sizeof array[0]); printf("sizeof array / sizeof array[0]: %lu\n", sizeof array / sizeof array[0]); printf("%d: %d\n", 0, array[0]); printf("%d: %d\n", 1, array[1]); } int main(int argc, char *argv[]) { int array[10]; printf("sizeof array: %lu\n", sizeof array); printf("sizeof array[0]: %lu\n", sizeof array[0]); printf("sizeof array / sizeof array[0]: %lu\n", sizeof array / sizeof array[0]); for (int i=0; i<sizeof array / sizeof array[0]; i++) { printf("%d\n", i); array[i] = i + 100; } func_a(&array); func_b(array); return 0; } layout ok? octopressをアップデートしたからテストしてるだけ。gistにも特に意味は無い。