读书人

关于realloc异常的有关问题

发布时间: 2012-03-26 15:46:56 作者: rapoo

关于realloc错误的问题
void extent_length(int base[],int check[],list <int> vode[])
{

max_length_now+=each_add; // #define each_add 10

if( (base=(int *)realloc(base,max_length_now*sizeof(int))) ==NULL) //error
{
cout<<"内存分配错误"<<endl;
exit(1);
}
}

部分代码,base[]是一个int数组。

[解决办法]
relloc函数的第一个参数必须是用过relloc函数的指针
[解决办法]
修改如下:

C/C++ code
void extent_length(int **base,int check[],list <int> vode[]){    max_length_now+=each_add; // #define each_add 10    if( (*base=(int *)realloc(*base,max_length_now*sizeof(int))) ==NULL) //error    {        cout<<"内存分配错误"<<endl;        exit(1);    }}//外部调用的时候需要传递指针的地址进去
[解决办法]
探讨

引用:

修改如下:
C/C++ code
void extent_length(int **base,int check[],list <int> vode[])
{

max_length_now+=each_add; // #define each_add 10

if( (*base=(int *)realloc(*base,max……

读书人网 >C语言

热点推荐