0
我想知道是否有可能管理指向套接字udp文件描述符的指针,因为我必须同时将send()数据发送到2个不同套接字。我有一个函数,创建2个套接字(套接字()setsocket()绑定()连接()...) 和另一个更改套接字(如果一个条件是真的,但我不写这部分)管理指向套接字文件描述符的指针
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,但我的代码给分段错误,所以我不知道这方法是正确的或可能的。 感谢您的建议
不是这个代码C++ ?我从来没有见过“int * psock = new int;”这种类型的声明在ansi c – nirva 2013-04-07 16:11:01
是的,抱歉。我用适当的C语法编辑它。 – 2013-04-07 17:07:21