使用指向具有结构的指针的指针的函数
function using a pointer to a pointer with a structure
我有一个函数使用指向结构指针的指针:
int function(struct_A ** mystructA);
当我将它与我声明的结构一起使用时,它起作用了:
struct_A *mystructA;
function(&mystructA);
但是,无法通过另一个结构使用我的结构:
struct struct_B{
struct_A *mystructA;
}
struct_B mystructB;
function( (&mystructB)->mystructA ); //this line cause me a segfault
我在这里挣扎,知道它可能来自哪里吗?
看来你的意思如下
struct struct_B{
struct_A *mystructA;
}
struct struct_B mystructB;
function( &mystructB.mystructA );
struct struct_B{
struct_A *mystructA;
}
struct struct_B mystructB;
struct struct_B *mystructBptr;
/* .... */
function( &mystructB.mystructA );
function( &(&mystructB) -> mystructA );
function( &mystructBptr -> mystructA );
我有一个函数使用指向结构指针的指针:
int function(struct_A ** mystructA);
当我将它与我声明的结构一起使用时,它起作用了:
struct_A *mystructA;
function(&mystructA);
但是,无法通过另一个结构使用我的结构:
struct struct_B{
struct_A *mystructA;
}
struct_B mystructB;
function( (&mystructB)->mystructA ); //this line cause me a segfault
我在这里挣扎,知道它可能来自哪里吗?
看来你的意思如下
struct struct_B{
struct_A *mystructA;
}
struct struct_B mystructB;
function( &mystructB.mystructA );
struct struct_B{
struct_A *mystructA;
}
struct struct_B mystructB;
struct struct_B *mystructBptr;
/* .... */
function( &mystructB.mystructA );
function( &(&mystructB) -> mystructA );
function( &mystructBptr -> mystructA );