c语言中bind函数,bind函数 | C/C++程序员之家
bind函数
作用:bind函数用于将套接字与指定端口相连
头文件:和
函数形式:int bind(int sockfd, const struct sockaddr *my_addr, socklen_t addrlen);
返回值:成功返回0,失败返回-1
说明:
当调用socket函数创建套接字后,该套接字并没有与本机地址和端口等信息相连,bind函数将完成这些工作。bind函数中的sockfd参数为调用socket函数后返回的文件描述符。my_addr参数为指向sockaddr结构体的指针(该结构体中保存有端口和IP地址信息)。addlen参数为结构体sockaddr的长度。
错误信息:
EACCES:地址受到保护,用户非超级用户。
EADDRINUSE:指定的地址已经在使用。
EBADF:sockfd参数为非法的文件描述符。
EINVAL:socket已经和地址绑定。
ENOTSOCK:参数sockfd为文件描述符。
实例演练:
注意创建套接字和使用bind函数实现socket的文件描述符与地址信息绑定的过程。
[cpp]
#include
#include
#include
#include
#define MY_SOCK_PATH "/somepath"
int main(int argc, char *argv[])
{
int sfd;
struct sockaddr_un addr;
//创建通信的套接字
sfd = socket(AF_UNIX, SOCK_STREAM, 0);
if (sfd == -1) {
perror("socket");
exit(EXIT_FAILURE);
}
//初始化addr变量
memset(&addr, 0, sizeof(struct sockaddr_un));
addr.sun_family = AF_UNIX;
strncpy(addr.sun_path, MY_SOCK_PATH,
sizeof(addr.sun_path) - 1);
//将端口信息与套接字绑定
if (bind(sfd, (struct sockaddr *) &addr, sizeof
(struct sockaddr_un)) == -1) {
perror("bind");
exit(EXIT_FAILURE);
}
…
}
[/cpp]
c语言中bind函数,bind函数 | C/C++程序员之家相关推荐
- C 语言中 char[] 的操作函数
C语言中char[]的操作函数 1.赋值操作 在C语言中,char型数组是不可以直接赋值的.例如在如下的代码中,会得到错误: char c1[20] = "women"; char ...
- c语言printf函数的作用,c语言中printf用法及其函数定义
c语言中printf用法及其函数定义 发布时间:2020-04-09 10:51:14 来源:亿速云 阅读:354 作者:小新 今天小编给大家分享的是c语言中printf用法及其函数定义,很多人都不太 ...
- 构造函数为什么不能是虚函数 ( 转载自C/C++程序员之家)
从存储空间角度,虚函数对应一个指向vtable虚函数表的指针,这大家都知道,可是这个指向vtable的指针其实是存储在对象的内存空间的.问题出来了,如果构造函数是虚的,就需要通过 vtable来调用, ...
- C语言基础入门48篇_20_函数入门:为什么使用函数?(函数使得程序模块化 使用函数封装细节,使得程序员只要面向函数的接口编程(参数与返回值),而不用关心函数内部细节)
菜鸟和高手都会基本,那菜鸟为什么是菜鸟,高手为什么是高手呢?很大的区别在于,高手写的程序[结构性]更好,更容易维护.而函数就是C语言结构化的一种手段. 函数可以将大的计算任务划分为多个较小的任务(解耦 ...
- c语言中val是什么函数,val(val是什么意思)
有这么一个C语言程序 : int i; long val; for(i=0;i 在C语言中Val是一个将由数字符号(包括正负号.小数点)组成的字符型数据转换成相应的数值型数据的函数,语法格式是Val( ...
- c语言中fmod()函数和log10()函数用法
C语言中fmod函数的功能是x/y的求余运算,适用于double ,float,long double,如果y=0的话,那么返回 值得一提的是%,'%'同样是取余,但是% 适用于整数取余,%是整数的取 ...
- c语言getchar函数的作用,c语言中getchar的用法函数用法
当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止.下面小编就跟你们详细介绍下c语言中getchar的用法,希望对你们有用. c语言中getchar ...
- c语言中srand的作用,C语言中srand(), rand(), time()函数 转载
srand函数 srand函数是随机数发生器的初始化函数. 原型:void srand(unsigned seed); 用法:它需要提供一个种子,这个种子会对应一个随机数,如果使用相同的种子,后面的r ...
- C语言中fputc和fgetc函数用法
C语言中文件的读写函数之 fputc.fgetc 首先,我们要知道fputs和fgetc这两个函数是包含在标准库函数中的函数,换句话说,就是封装在标准函数中的两个函数.其中这两个函数都是每次只能输入或 ...
- c语言中mul是什么函数,mul函数的具体用法
匿名用户 1级 2010-12-26 回答 PHP基础 Author:陈庆平 (Andych) E-mail:ahut9923@126.com 一.PHP入门 二.PHP变量 1.php变量的命名 变 ...
最新文章
- Visual C++ 2011-8-15
- 研究人工智能最应该注意的问题
- Replication的犄角旮旯(五)--关于复制identity列
- Gradle 配置spring boot启动
- 土人系列AS入门教程--实战篇
- J storm战队成员_DOTA2J.Storm战队介绍-DOTA2ESL孟买站预选赛J.Storm战队介绍_牛游戏网攻略...
- oracle dbf文件设置,oracle移动数据dbf文件
- 最小生成树——普里姆算法和克鲁斯卡尔算法
- 《LoadRunner 没有告诉你的》之四——理解性能
- 深入浅出GAMP算法(下):MMSE估计和AWGN场景
- 十二时辰及经络走向图
- sr650安装linux网卡驱动,SR650安装Windows2016添加RAID卡驱动
- 【Word】插入公式显示灰色,失效解决
- 懂生意的产品经理,才能做好商业化
- vue.js毕业设计,基于vue.js前后端分离电影院售票小程序系统设计与实现
- PDA只需扫描条码能够完成库存盘点
- 计算机组装考核记录表,计算机组装与维护考核方案(必修).doc
- MiniGUI——第一个程序helloworld
- Coggle专访系统之神与我同在:我的竞赛学习路线
- Android仿学习强国填空题考试界面