函数返回的地址是本地变量
时间:2010-11-21 来源:orochi_cgj
function returns address of local variable
int wh[2]是个局部变量,它的空间是在堆栈中分配的
当你从这个函数返回以后,这段空间里的内容很有可能不再是你想要的了
解决方法:
1,static int wh[2];
2,你把改数组作为第3个参数传进去。
void screenCenter( int width, int height, int * wh)
{
...
}
3,改成全局变量(不提倡)
int *screenCenter( int width,int height) |
int wh[2]是个局部变量,它的空间是在堆栈中分配的
当你从这个函数返回以后,这段空间里的内容很有可能不再是你想要的了
解决方法:
1,static int wh[2];
2,你把改数组作为第3个参数传进去。
void screenCenter( int width, int height, int * wh)
{
...
}
3,改成全局变量(不提倡)
相关阅读 更多 +