在C语言中重新分配函数内存和按引用传递
我知道这听起来很愚蠢,但是,为什么我实现的这个函数不能正常工作 我在终端中发现以下错误:在C语言中重新分配函数内存和按引用传递,c,C,我知道这听起来很愚蠢,但是,为什么我实现的这个函数不能正常工作 我在终端中发现以下错误: cerinta3.c: In function ‘void realocare_memorie(student**, int)’: cerinta3.c:9:19: error: invalid conversion from ‘void*’ to ‘student*’ [-fpermissive] 9 | *vector = realloc(*vector, dimensiune * sizeo
cerinta3.c: In function ‘void realocare_memorie(student**, int)’:
cerinta3.c:9:19: error: invalid conversion from ‘void*’ to ‘student*’ [-fpermissive]
9 | *vector = realloc(*vector, dimensiune * sizeof(student));
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| void*
<>你通过C++编译器(错误代码中的代码> G++< /COD>)编译了C代码。这就是犯那个错误的特征错误。取而代之的是代码> GCC 。 < P>您通过C++编译器编译了C代码(错误代码中的代码> G++<代码> >。这就是犯那个错误的特征错误。取而代之的是代码> GCC < /C>。你是否意外地使用C++而不是C?我认为这是一个重复的例子,你是否偶然使用C++而不是C?我认为这是一个重复的例子。
void realocare_memorie (student **vector, int dimensiune) {
*vector = realloc(*vector, dimensiune * sizeof(student));
}