【发布时间】:2013-04-08 01:06:53
【问题描述】:
我想知道是否可以管理指向套接字 udp 文件描述符的指针,因为我必须使用 send() 同时将数据发送到 2 个不同的套接字。
我有一个创建 2 个套接字的函数 (socket() setsocket() bind() connect()...) 另一个改变套接字(如果一个条件为真,但我不写这部分)
void set_socket(){
socket00 = socket(AF_INET, SOCK_DGRAM, 0);
socket01 = socket(AF_INET, SOCK_DGRAM, 0);
...
setsocket();
setsocket();
....
....
}
int change_socketfd (int fd) {
if (fd == socket01 ) {
return ( socket00 );
}
else if (fd == socket00 ) {
return ( socket01 );
}
}
我可以有这样的指针吗?
int *psock;
psock=&change_socketfd(socket00);
ris = send(*psock, datagram, sizeof(*datagram)+1 , 0);
我需要动态更改 socketfd ,但我的代码给出了分段错误,所以我不确定这种方法是否正确或可能。 感谢您的建议
【问题讨论】: