望多多指正:
#include <stdio.h>
// global
int global_array[10];
void functionWithArrayArg(int local_array_param[10]);
int main() {
//auto
int auto_array[10];
//static
static int static_array[10];
printf("address of global_array: 0x%p\n", global_array);
printf("address of auto_array: 0x%p\n", auto_array);
printf("address of static_array: 0x%p\n", static_array);
functionWithArrayArg(auto_array);
return 0;
}
void functionWithArrayArg(int local_array_param[10]) {
printf("address of local_array_param在functionWithArrayArg (address of 实参): 0x%p\n", (void*)local_array_param);
int a, b;
a = 0; // adding initialization
b = 0;
printf("Address of 'a' in functionWithArrayArg: %p\n", (void*)&a);
printf("Address of 'b' in functionWithArrayArg: %p\n", (void*)&b);
}
全局变量,局部自动变量,局部静态变量,实参及形参的地址,两次调试结果如下: