无法获取要绑定的UDP套接字

无法获取要绑定的UDP套接字,udp,ios7,Udp,Ios7,我已经尝试了两周通过UDP发送一个字符。到目前为止,我还没有找到一个实际使用XCode和iOS7的例子。我现在陷入困境,因为每次运行代码时,Bind函数都返回-1。我不知道什么是错的,什么是解决办法。另外,我知道我的收件人地址不见了,但现在我只是想解决这个问题。(使用特定地址的示例未能编译。) 这是非常令人沮丧的,因为我已经成功地在Windows、Windows Mobile 6.0和AS400上创建了UPD程序,而没有花费我在这方面的那么多精力,到目前为止还没有什么可以展示的 这是我目前的代码

我已经尝试了两周通过UDP发送一个字符。到目前为止,我还没有找到一个实际使用XCode和iOS7的例子。我现在陷入困境,因为每次运行代码时,Bind函数都返回-1。我不知道什么是错的,什么是解决办法。另外,我知道我的收件人地址不见了,但现在我只是想解决这个问题。(使用特定地址的示例未能编译。)

这是非常令人沮丧的,因为我已经成功地在Windows、Windows Mobile 6.0和AS400上创建了UPD程序,而没有花费我在这方面的那么多精力,到目前为止还没有什么可以展示的

这是我目前的代码

    char Buff[256];

    strcpy(Buff,"Test MESSAGE");
    int handle = socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);
    if (handle > 0) {
        struct sockaddr_in address;
        address.sin_family = AF_INET;
        address.sin_port = htons(311);
        inet_pton(AF_INET, "10.121.8.54", &(address.sin_addr));
        if (bind(handle,(struct sockaddr *) &address, sizeof(struct sockaddr_in))< 0){
            printf("************************ Failed to bind\n");
        } else {
            send(handle, Buff, sizeof(Buff), 0);
        }
    } else {
        printf("Faile to create socket\n");
    }//end if
charbuff[256];
strcpy(Buff,“测试消息”);
int handle=插座(PF_INET、SOCK_DGRAM、IPPROTO_UDP);
如果(句柄>0){
地址中的结构sockaddr_;
address.sin_family=AF_INET;
address.sin_port=htons(311);
inet_pton(AF_inet,“10.121.8.54”和(address.sin_addr));
if(bind(handle,(struct sockaddr*)和address,sizeof(struct sockaddr_in))<0{
printf(“**********************绑定失败\n”);
}否则{
发送(句柄,Buff,sizeof(Buff),0);
}
}否则{
printf(“创建套接字失败\n”);
}//如果结束
这是我的进口货

#import <sys/socket.h>
#import <netinet/in.h>
#import <sys/types.h>
#import <fcntl.h>
#import <netdb.h>
#import <arpa/inet.h>
#导入
#进口
#进口
#进口
#进口
#进口

当您遇到错误时,不要只打印您自己设计的信息。打印错误。在这种情况下,请使用“perror()”,或使用“strerror”组成错误字符串。当你这样做了,要么问题会变得清晰,你可以自己解决,要么把错误贴在这里。在那之前,这不是一个真正的问题。添加peror()后,我得到的错误是权限被拒绝。我发现一篇文章告诉我,我需要进入Xcode和ProductScheme,并将调试过程的选项更改为root;但是,此选项将灰显。试图寻找一种方法来启用,但没有发现任何有用的东西;发现很多过时的。最后发现我使用的端口是不允许的。更改为不同的端口号,现在可以使用了。