行业资讯
您现在所在的位置:首页>企业动态>行业资讯

linux数据发送与接收

编辑:学到牛牛IT培训    发布日期: 2023-03-17 10:22:21  

在Linux中,数据的发送和接收通常使用套接字(socket)来实现。以下是一个简单的示例代码,演示了如何创建一个UDP套接字并发送和接收数据:


1679014928836.jpg


发送数据:


#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#define PORT 8888int main(){    int sockfd;    struct sockaddr_in servaddr;


    char sendline[] = "Hello, Server!";    char recvline[1024];    // 创建套接字

    sockfd = socket(AF_INET, SOCK_DGRAM, 0);    // 设置服务器地址结构体

    memset(&servaddr, 0, sizeof(servaddr));

    servaddr.sin_family = AF_INET;

    servaddr.sin_port = htons(PORT);

    servaddr.sin_addr.s_addr = inet_addr("127.0.0.1");    // 发送数据

    sendto(sockfd, (const char *)sendline, strlen(sendline),

           MSG_CONFIRM, (const struct sockaddr *)&servaddr,           sizeof(servaddr));


    close(sockfd);    return 0;

}

接收数据:


#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#define PORT 8888int main(){    int sockfd;    struct sockaddr_in servaddr, cliaddr;


    char buffer[1024];    // 创建套接字

    sockfd = socket(AF_INET, SOCK_DGRAM, 0);    // 设置服务器地址结构体

    memset(&servaddr, 0, sizeof(servaddr));

    servaddr.sin_family = AF_INET;

    servaddr.sin_port = htons(PORT);

    servaddr.sin_addr.s_addr = INADDR_ANY;    // 绑定套接字到端口

    bind(sockfd, (const struct sockaddr *)&servaddr, sizeof(servaddr));    socklen_t len;    int n;    // 接收数据

    n = recvfrom(sockfd, (char *)buffer, 1024,

                 MSG_WAITALL, (struct sockaddr *)&cliaddr,

                 &len);


    buffer[n] = '';    printf("Client : %s ", buffer);


    close(sockfd);    return 0;

}

以上代码演示了一个基本的UDP套接字通信示例,在实际应用中需要根据具体需求进行修改和优化。


免费试学
课程好不好,不如实地听一听

封闭学习

2

1

联系我们

电话:028-61775817

邮箱:1572396657@qq.com

地址:成都市金牛区西城国际A座8楼

  • 新闻频道_关注IT技术应用资讯-学到牛牛
    新闻频道_关注IT技术应用资讯-学到牛牛

    扫一扫,免费咨询

  • 新闻频道_关注IT技术应用资讯-学到牛牛
    新闻频道_关注IT技术应用资讯-学到牛牛

    微信公众号

  • 新闻频道_关注IT技术应用资讯-学到牛牛
新闻频道_关注IT技术应用资讯-学到牛牛

学一流技术,找高薪工作

新闻频道_关注IT技术应用资讯-学到牛牛

7-24小时服务热线:

028-61775817

版权声明 网站地图

蜀ICP备2021001672号

课程问题轻松问