从自定义结构中保存和访问字段

时间:2015-01-14 11:32:22

标签: c

我定义了这样的结构(以及其他字段,但它们与问题无关)

typedef struct {

  struct sockaddr_in addr_destination;

}MY_PACKET;

主要调用函数send_command

struct sockaddr_in *addr_server;
socklen_t addr_server_lenght;
MY_PACKET command_packet;

void send_command(char *comm, int socket_file_descriptor, struct sockaddr_in *server_address) {
    addr_server = server_address;
    addr_server_lenght = sizeof(*addr_server);
    printf("Server address: %s\n", inet_ntoa(addr_server->sin_addr));

    command_packet.addr_destination = *addr_server;
    printf("Server address: %s\n", inet_ntoa(command_packet.addr_destination.sin_addr));
}

所以第一个printf打印" 127.0.0.1"正确地 第二次打印" 0.0.0.0" 程序的其余部分包含一个线程,该线程将此数据包发送到服务器并等待ack(因此我必须能够从线程函数访问command_packet的所有字段),但我仍然卡在保存服务器地址在数据包中,我做错了什么?感谢

0 个答案:

没有答案