C语言 新手初学者麻烦帮忙看看,这样把数组地址赋给指针地址 对不对
C语言 新手菜鸟求助:麻烦帮忙看看,这样把数组地址赋给指针地址 对不对?int *numbervoid assign_number(in
C语言 新手菜鸟求助:麻烦帮忙看看,这样把数组地址赋给指针地址 对不对?
int *number;
void assign_number(int length)
{
int temp[length];
number=temp;
}
[解决办法]
对的。。
[解决办法]
对.
因为数组名可以退化成指针
[解决办法]
对是对的,可是有个问题你要注意了。你的数组定义在局部函数中,内存空间位于栈空间上,待函数周期结束后数组就被释放了。所以你得到的地址就没有用了。
[解决办法]
对啊,这相当于把数组的首地址赋值给number了~~
[解决办法]
[解决办法]int *number;
void assign_number(int length)
{
static int temp[length];
number=temp;
}
[解决办法]赋值是对的,只是你获取的数组首地址,再该函数调用结束后就会被编译器自动释放。在函数外面使用时无效的。