当前位置:  技术问答>linux和unix

怎样编程发送广播包?我的这段程序发送怎么返回值总是-1?

    来源: 互联网  发布时间:2015-05-08

    本文导语:  int main(int argc, char *argv[]) {         int s,iSend;         bool bBroadcast;         char *sMsg="This is a test";         struct sockaddr_in bcast;         s=socket(AF_INET, SOCK_RAW, IPPROTO_UDP);         bBroadcast...

int main(int argc, char *argv[])
{
        int s,iSend;
        bool bBroadcast;
        char *sMsg="This is a test";
        struct sockaddr_in bcast;

        s=socket(AF_INET, SOCK_RAW, IPPROTO_UDP);
        bBroadcast=true;
        setsockopt(s,SOL_SOCKET,SO_BROADCAST,(char *)&bBroadcast,sizeof(bool));
        bcast.sin_family=AF_INET;
        bcast.sin_addr.s_addr=0xffffffff;
        bcast.sin_port=htons(5150);
        
        iSend=sendto(s,sMsg,strlen(sMsg),0,(struct sockaddr *)&bcast,sizeof(bcast));

为什么iSend总是等于-1?怎么发送广播包啊? 请各位老大帮忙啊!!

|
我改了一下,你自己看吧。

#include 
#include 
#include 
#include 


int main(int argc, char *argv[])
{
        int s,iSend;
        int bBroadcast;
        char *sMsg="This is a test";
        struct sockaddr_in bcast;

        s=socket(AF_INET, SOCK_DGRAM, 0);
        bBroadcast=1;
        setsockopt(s,SOL_SOCKET,SO_BROADCAST,(char *)&bBroadcast,sizeof(bBroadca
st));
        bcast.sin_family=AF_INET;
        bcast.sin_addr.s_addr=0xffffffff;
        bcast.sin_port=htons(5150);

        iSend=sendto(s,sMsg,strlen(sMsg),0,(struct sockaddr *)&bcast,sizeof(bcast));
        printf("send:%dn",iSend);
}

    
 
 

您可能感兴趣的文章:

  • 网络编程中先发送的数据是不是先到达目的
  • UDP SOCKET编程,不能发送广播数据包
  • [求助]请问socket编程中send()函数可以发送整形数据吗?
  • 怎么编程实现发送Ipv6携带扩展报头的数据包??对ipv6有研究的朋友进来帮帮忙?
  • 网络编程中:用SEND发包时,如何预先知道可用的发送缓冲区有多大?急!!!
  • 基于UDP的编程中,如何用指定的端口发送数据?
  • 可以使用shell编程完成发送邮件的功能吗?
  • gtk编程问题,如何在一个线程中向gtk控件发送一个expose_event消息
  • 请问linux下socket编程服务器数据只能发送不能接收吗?
  • linux网络编程,怎么像服务器端发送结构体?
  • 请问RST在什么情况下发送?? 使用TCP socket编程的话是否会引起这种TCP包的发送?
  • (100)"断开的管道" 在Socket编程当中,如果我连续发送包,例如1000次,总会出现"断开的管道"的错误提示,请问如何解决
  • Linux网络编程中 发送的消息无法正常显示
  • linux多线程编程中如何间隔100ms发送一次网络数据包,100ms的时间如何把握?
  • 浙ICP备11055608号-3 iis7站长之家
  • c# socket网络编程接收发送数据示例代码
  • java网络编程中向指定URL发送GET POST请求示例
  • socket编程,建立连接后为何必须不断地发送,只要间隔3s再发送,对方就收不到数据了?怎么办?谢谢
  • 谁有Linux下的TCP/IP编程的例子,侦听,接收,发送,继续循环侦听
  • linux 下socket编程,可以互相链接但是无法发送数据,请各位大侠帮忙看看
  • 求助:UDP编程,无法接收广播数据包
  • {求救}socket编程处理udp广播
  • python网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • linux c编程:怎么从键盘只读取一个字符就返回,不要回车后才返回
  • linux shell编程 如何把命令返回值赋给字符串
  • 急问socket编程:程序中执行sendto()返回errno=101是什么原因啊
  • linux c socket http编程 返回http消息体出错!
  • re socket编程中 ACCEPT返回的socket与原socket(他参数中的)端口号一样吗?
  • linux 网络编程 send 函数 的返回值是否会小于输入值?
  • UNIX 环境高级编程 17章进程高级通信中的open服务器2 ioctl函数返回错误!!
  • 求助socket编程问题:C/S模式.客户端调用Winsock函数connect()的时候,返回错误码是10065(主机路由不可达).
  • 关于socket编程的一个难点:recv()函数的返回问题!
  • socket编程accept返回值为0,是否正常?
  • linux下V4L2编程,ioctl VIDIOC_DQBUF时,为什么总是返回-1呢?如何解决?
  • 为什么SOCKET编程时遇到这么奇怪的问题, acceptt接受客户端时总是返回-1,请高手指教,急!!!!!!!!!!!!!!
  • linux socket编程 accept 返回值的问题
  • 请问:我发现在linux上的网络编程时, 若客户端连不上服务端,就会阻塞,但如果是在UNIX上,若连不上,会马上返回,并不阻 塞,怎样让它也能阻塞啊?
  • 急!网络编程,connect()无法连接,返回 errno 为 101 。该怎么解决?谢谢
  • java多线程编程之从线程返回数据的两种方法
  • socket编程中accept()返回值出错?
  • socket编程:如何设置connect返回时间?
  • 关于unix网络编程select函数总是返回0的问题
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • 都说《UNIX环境高级编程》好,对于学linux编程好不好?《Linux下的c编程》《嵌入式系统C编程》那个更适合初学者?各是那个出版社的?(
  • 2013年7月和2013年8月编程语言排行榜
  • daemon 是属于 用户态编程 还是 内核态编程? 关于内核编程的书/资料介绍些好吗?
  • 苹果OS X和IOS下最新编程语言swift介绍
  • 请教linux下的编程的选择:我听说有gtk+gnome的编程,也有kde里的 什么编程,到底应该选择哪个呢?好象一个是技术好一点,一个是市场占有
  • 学不好编程的三个原因
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • 半路出家转行学编程如何才能成为大牛?
  • unix编程与linux编程有什么区别?
  • 2017 年热门编程语言排行榜出炉,你的语言上榜没?
  • 我想学Linux编程,请大家推荐几本学习Linux下C/C++编程的书


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3