我想看看带有gdb的typedef结构组件,我得到"尝试取消引用通用指针。"错误。我没有struct的这个问题,但我不想改变整个代码,我相信有一种方法。我打印了简单的代码(使用petsc)来更多地表达问题:
int main(int argc,char **args)
{
typedef struct{
PetscReal x;
PetscReal y;
} Cmpnts;
Cmpnts *vec;
vec = malloc(3 * sizeof (*vec));
PetscInitialize(&argc,&args,(char *)0,help);
vec[0].x=1.; vec[0].y=2.;
vec[1].x=1.; vec[1].y=2.;
vec[2].x=1.; vec[2].y=2.;
PetscFinalize();
return 0;
}
gdb
p vec[0]
"尝试取消引用通用指针。"