1

構造体へのポインターを別の関数に渡そうとしています。しかし、コンパイルに行くと、warning: passing argument 1 of 'build_network_state' from incompatible pointer type

これは、私のプログラムにコンパイルされるヘルパー関数にあります。

typedef struct router {
    int num;
    char label[64];
    Topology *topology;
} Router;

これは .c ファイルからのものです。

void build_network_state(Router *ptr) {

    fprintf(stdout, "Hello from router %s\n", ptr->label);
}

int main(int argc, char *argv[]) {

    Router* this_router = malloc(sizeof(Router));

    ...

    fprintf(stdout, "test: %s\n", this_router->label); // output looks fine if I comment the next line
    build_network_state(&this_router);
}
4

2 に答える 2