当前位置: 首页 > 工具软件 > ntop > 使用案例 >

linux内核中使用inet_ntop,linux 网络编程 inet_pton & inet_ntop函数

卫寒
2023-12-01

#include

int inet_pton(int family,const char * strptr,void * addrptr);

返回:--成功, --输入不是有效的表达格式 , ---出错

const char * inet_ntop(int family,const void * addrptr,char * strptr,size_t len);

其中len =sizeof(* strptr)

返回: 指向结果的指针--成功 , NULL--出错

程序代码:

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

int main(int argc,char ** argv)

{

char dst[];

int sockfd = socket(AF_INET,SOCK_STREAM,);

struct sockaddr_in serv;

memset(&serv,,sizeof(struct sockaddr_in));

serv.sin_family = AF_INET;

serv.sin_port = htons();

//serv.sin_addr.s_addr = INADDR_ANY;

//以下serv.sin_addr.s_addr可替换为 serv.sin_addr

if((inet_pton(AF_INET,"127.0.0.1",&serv.sin_addr.s_addr))==)

printf("inet_pton \n");

if((inet_ntop(AF_INET,&serv.sin_addr.s_addr,dst,sizeof(dst)))==NULL)

printf("inet_ntop\n");

printf("dst=%s,sizeof(dst)=%d\n",dst,sizeof(dst));

bind(sockfd,(struct sockaddr *)&serv,sizeof(serv));

listen(sockfd,);

return ;

}

Linux 网络编程 入门-常用函数

网络连接无外乎服务器和客户端两方面的编程. 对于服务器大致的流程是:1---调用socket函数创建套接字 2---调用bind函数分配IP地址和端口号 3---调用listsen函数将套接字转为可接 ...

linux网络编程:splice函数和tee( )函数高效的零拷贝

splice( )函数 在两个文件描述符之间移动数据,同sendfile( )函数一样,也是零拷贝. 函数原型: #include ssize_t splice(int ...

Linux网络编程2——系统函数

socket信息数据结构 #include struct sockaddr { unsigned short sa_family; /*地址族*/ ]; /* ...

linux网络编程:select()函数以及FD_ZERO、FD_SET、FD_CLR、FD_ISSET(转)

从别人的博客中转载过来了这一篇文章,经过重新编辑排版之后展现于此,做一个知识点保存与学习. select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复 ...

linux网络编程涉及的函数

常用的网络命令: netstat 命令netstat是用来显示网络的连接,路由表和接口统计等网络的信息. netstat有许多的选项我们常用的选项是-an用来显示详细的网络状态.至于其它选项我们使用帮 ...

linux网络编程九:splice函数,高效的零拷贝

from:http://blog.csdn.net/jasonliuvip/article/details/22600569 linux网络编程九:splice函数,高效的零拷贝 最近在看

服务器编程入门(4)Linux网络编程基础API

问题聚焦:     这节介绍的不仅是网络编程的几个API     更重要的是,探讨了Linux网络编程基础API与内核中TCP/IP协议族之间的关系.     这节主要介绍三个方面的内容:套接字( ...

Linux网络编程(六)

网络编程中,使用多路IO复用的典型场合: 1.当客户处理多个描述字时(交互式输入以及网络接口),必须使用IO复用. 2.一个客户同时处理多个套接口. 3.一个tcp服务程序既要处理监听套接口,又要处理 ...

Linux网络编程(五)

/*Linux网络编程(五)——多路IO复用之select() 网络编程中,使用IO复用的典型场合: 1.当客户处理多个描述字时(交互式输入以及网络接口),必须使用IO复用. 2.一个客户同时处理多个 ...

随机推荐

C# uploadify 上传 -220 IO Error 问题

1. 前端: uploadify 上文件大小限制配置. 2. 后端: web.config 配置 <?xml version="1.0"?>

10分钟学习pandas

10 Minutes to pandas This is a short introduction to pandas, geared mainly for new users. You can se ...

事务的ACID特性

事务(Transaction)是并发控制的基本单位.    所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位.例如,银行转帐工作:从一个帐号扣款并使另一个帐号增 ...

JavaScript Patterns 4&period;1 Functions Background

Functions are first-class objects and they provide scope. • Can be created dynamically at runtime, d ...

OSGI框架学习

OSGI框架三个重要概念 OSGi框架是根据OSGi规范中定义的三个概念层设计的:模块.模块生命周期.服务. 模块层定义了OSGi模块的概念(bundle,即包含一个元数据MANIFEST.MF的JA ...

PHP &lowbar;&lowbar;autoload函数知识点

__autoload函数主要是用来包含不存在的类文件,当初始化的类不存在的时候 存在一个文件名为footer.php的文件,里面有个footer类 class footer{ public funct ...

1214 线段覆盖wiki oi

题目描述 Description 给定x轴上的N(0

Bundle display name 与 Bundle name 的区别

Bundle display name 与 Bundle name 的区别是什么?"Bundle Name" and "Bundle display name" ...

spark集群搭建整理之解决亿级人群标签问题

最近在做一个人群标签的项目,也就是根据客户的一些交易行为自动给客户打标签,而这些标签更有利于我们做商品推荐,目前打上标签的数据已达5亿+, 用户量大概1亿+,项目需求就是根据各种组合条件寻找标签和人群 ...

HTML入门6

这篇将简单会编写网页整体网站架构,通过HTML来表示网站结构. 标题,通常顶部有个大标题或图标,是网站的主要常见信息,存在于每个网页 导航,通常包含菜 ...

 类似资料: