accept函数出现“Invalid Argument”的原因
来源:互联网 发布:中文分词算法 hanlp 编辑:程序博客网 时间:2024/06/05 06:17
转载:博客
总结自己在运用accept函数时所出现的的“Invalid Argument”时的错误,主要有以下两种误用:
首先简单介绍一下accept函数
头文件#include <sys/socket.h>
定义:int accept(int sockfd, struct sockaddr* addr, socklen_t *addrlen)
返回值:非负描述字-成功,-1出错
出错情况1: 在参数1处出错,多半情况是sockfd值非法,也即是没有绑定(bind),监听(listen)或者是负值等等;
出错情况2:在参数3处出错,没有给addrlen传入合法的值,或者是没有初始化(addrlen
= sizeof(addr))
自己解决:
问题就出在accept的第3个参数:必须为正数,把那个变量初始化一下就好了~
socklen_t clilen= sizeof(struct sockaddr);
struct sockaddr_in clientaddr;
connfd = accept(listenfd,(sockaddr *)&clientaddr,&clilen);
阅读全文
0 0
- accept函数出现“Invalid Argument”的原因
- accept函数出现“Invalid Argument”的原因
- accept的Invalid Argument错误
- accept: Invalid argument
- accept: Invalid argument
- accept: Invalid argument
- accept: Invalid argument
- accept: Invalid argument问题解决
- accept: Invalid argument
- accept: Invalid argument
- accept error: Invalid argument
- 消息队列函数 msgsnd 出现Invalid argument错误的解决办法
- 错误提示:accept: Invalid argument
- dd: opening `/dev/zero': Invalid argument的错误原因
- ubuntu 环境共享内存函数shmget与shmat的使用以及shmid:: Invalid argument错误的原因
- ubuntu 环境共享内存函数shmget与shmat的使用以及shmid:: Invalid argument错误的原因
- 分区时候出现Invalid argument
- shmget出现Invalid argument错误
- 51nod 1247 可能的路径 -数论
- IntelliJ Idea 2017 免费激活方法
- xUbuntu系统ssh远程登录时突然断开问题
- loj6014「网络流 24 题」最长 k 可重区间集(费用流)
- WebAssembly已支持所有主流浏览器
- accept函数出现“Invalid Argument”的原因
- 『每周观察』:“在线抓娃娃”开启新娱乐窗口
- AV1:为互联网提供开放、免费的视频编解码工具
- using UnityEditor引用注意事项
- linux中fork()函数详解
- windows 安装 mediawiki
- Promise对象——ECMAScript 6 入门笔记(一)
- springmvc或者springboot整合swagger
- python scrapy cannot import name '_win32stdio'的解决办法