VxWorks网络编程常见问题的解决方案

作者:佚名 上传时间:2023-05-22 运行软件:C/C++ 软件版本:VxWorks 6.9.3.3 版权申诉

该示例代码介绍了在VxWorks环境下使用socket进行网络编程时遇到的常见问题的解决方案,包括如何处理阻塞和非阻塞模式、超时和重试、TCP和UDP等多种网络协议的使用等。实现方式是通过简单的示例代码和详细的注释说明来演示解决方案的具体实现步骤和注意事项。

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>

#define SERVER_PORT 8888
#define MAXLINE 1024

int main(int argc, char **argv)
{
    struct sockaddr_in serveraddr;
    int sockfd, n;
    char recvline[MAXLINE + 1];
    char sendline[MAXLINE + 1];

    if (argc != 2) {
        printf("usage: %s <IPaddress>\n", argv[0]);
        exit(0);
    }

    if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) < 0) {
        printf("socket error: %s\n", strerror(errno));
        exit(0);
    }

    bzero(&serveraddr, sizeof(serveraddr));
    serveraddr.sin_family = AF_INET;
    serveraddr.sin_port = htons(SERVER_PORT);

    if (inet_pton(AF_INET, argv[1], &serveraddr.sin_addr) <= 0) {
        printf("inet_pton error: %s\n", strerror(errno));
        exit(0);
    }

    if (connect(sockfd, (struct sockaddr *) &serveraddr, sizeof(serveraddr)) < 0) {
        printf("connect error: %s\n", strerror(errno));
        exit(0);
    }

    printf("connected to server\n");

    while (fgets(sendline, MAXLINE, stdin) != NULL) {
        sendline[MAXLINE - 1] = '\0';

        if (send(sockfd, sendline, strlen(sendline), 0) < 0) {
            printf("send error: %s\n", strerror(errno));
            exit(0);
        }

        if ((n = recv(sockfd, recvline, MAXLINE, 0)) < 0) {
            printf("recv error: %s\n", strerror(errno));
            exit(0);
        }

        recvline[n] = '\0';
        printf("%s", recvline);
    }

    exit(0);
}

免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com

用户评论
相关推荐
VxWorks网络编程常见问题解决方案
该示例代码介绍了在VxWorks环境下使用socket进行网络编程时遇到的常见问题的解决方案,包括如何处理阻塞和非阻塞模式、超时和重试、TCP和UDP等多种网络协议的使用等。实现方式是通过简单的示例代
VxWorks 6.9.3.3
C/C++
2023-05-22 12:25
vxworks网络编程
学习网络编成的好帮手,vxworks资料不多,网络编程方面的更是难得
PDF
0B
2019-02-28 09:23
VxWorks网络编程
网络网络编程编程网络编程网络编程网络编程网络编程网络编程网络编程网络编程网络编程网络编程
RAR
0B
2019-01-02 04:38
VxWorks网络编程常见问题解决方案
本文介绍VxWorks系统中常见的网络编程问题及其解决方案,涉及socket编程、网络配置等方面。通过本文的介绍和解决方案,读者将能够更好地进行VxWorks网络编程。#include <st
VxWorks 6.7
VxWorks
2023-03-25 02:54
vxworks网络编程实例
网络编程的一些实例,对初学者是不错的学习资料。好不容易在找到的,给大家分享一下。
RAR
0B
2019-06-04 16:34
VxWorks网络编程教程
VxWorks 网络编程教程里面有大量的事例!
PDF
0B
2019-01-02 04:38
VxWorks网络编程指南
VxWorks网络编程指南,中文版
PDF
0B
2019-07-11 07:10
vxworks网络编程源码
vxworks网络编程源码,可以参考一下
RAR
0B
2020-05-31 12:43
Vxworks网络编程手册
Vxworks的网络编程手册,简单易用!对入门者很有提高哦!
RAR
0B
2020-02-01 14:12
VxWorks网络编程指南
指导如何在VxWorks下进行网络编程,利用VxWorks网络组件
PDF
8.78MB
2020-12-20 23:09