1 / 30
文档名称:

LINUX环境编程网络编程.ppt

格式:ppt   大小:824KB   页数:30页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

LINUX环境编程网络编程.ppt

上传人:85872037 2018/7/15 文件大小:824 KB

下载得到文件列表

LINUX环境编程网络编程.ppt

文档介绍

文档介绍:LINUX应用编程–网络编程篇
2010年8月12日
2
一、字节排序函数
在主机字节顺序与网络字节顺序间转换
#include </>
主机字节序网络字节序
uint16_t htons(uint16_t val);
uint32_t htonl(uint32_t val);
网络字节序主机字节序
uint16_t ntohs(uint16_t val);
uint32_t ntohl(uint32_t val);
3
二、地址转换函数
#include <arpa/>

in_addr_t inet_addr(const char *strIP);
若成功,返回32位网络字节序的地址,若出错,则返回NADDR_NONE
不建议使用,
int inet_aton(const char *strIP, struct in_addr *addr);
若成功,返回1,若地址字符串有错,返回0,仅转换IPV4地址
int inet_pton(int family, const char *strptr, void *addrptr);
返回:1成功,0-输入不是有效的表达式,-1出错
Family:6,
地址转换函数

char *inet_ntoa(struct in_addr inaddr);
返回:指向字符串IP的指针。
例:char *ip = inet_ntoa();
const char *inet_ntop(int family, const void *addr, char *strIP, size_t len);
参数:family –地址族,6
addr –需要转换的地址
返回:指向字符串IP的指针,失败返回NULL;
例:char ip[64];
inet_ntop(, &, ip, 64);
4
5
三、地址结构定义及变量定义

struct sockaddr{
sa_family_t sa_family;
char sa_data[14];
};
struct sockaddr_in{
sa_family_t sin_family;
in_port_t sin_port;
struct in_addr sin_addr;
};
typedef uint32_t in_addr_t;
struct in_addr{
in_addr_t s_addr;
};
通用套接字地址:
6
四、基本的TCP套接口函数及调用流程
7
四、基本套接字函数
1. socket()
int socket(int family, int type, int protocol);
功能描述:创建套接字文件描述字。
参数:family –协议族
-------- IPV4协议()
6-------- IPV6协议
AF_LOCAL-------- UNIX域协议(PF_LOCAL)
AF_ROUTE------- 路由套接口
type –套接字类型
SOCK_STREAM -------- 字节流套接口(TCP及AC_LOCAL时)
SOCK_DGRAM --------- 数据报套接口(UDP及AC_LOCAL时)
protocol –取0
返回:成功为非负描述字,失败返回-1
例子:int fd = socket(, SOCK_STREAM, 0);
8
四、基本套接字函数
2. connect()
int connect(int sockfd, const struct sockaddr *addr, socklen_t len);
功能描述:建立从客户端到服务器的连接
返回:成功返回0,失败返回-1
例子:
int sock;
struct sockaddr_in addr;
memset(&addr, 0, sizeof(addr));
sock = socket(, SOCK_STREAM, 0);
= ;
//转换IP和端口到网络字节序
= htons(port);
// = inet_addr(“”);
inet_pton(, “”, &);
if(connect(sock, (struct sockaddr*

最近更新

2024年辽宁省朝阳市行政职业能力测验题库(含.. 149页

2024年辽宁省盘锦市行政职业能力测验题库及答.. 147页

2024年辽宁省葫芦岛市选调生考试(公共基础知.. 147页

2024年辽宁省辽阳市选调生考试(公共基础知识.. 147页

2024年辽宁省锦州市选调生考试(公共基础知识.. 146页

2024年郑州黄河护理职业学院单招职业适应性测.. 56页

2024年重庆电子工程职业学院单招职业适应性测.. 59页

2024年长沙职业技术学院单招职业适应性测试题.. 59页

2024年黑龙江农业工程职业学院单招职业适应性.. 59页

2024年黑龙江省伊春市行政职业能力测验题库及.. 149页

2024年黑龙江省哈尔滨市行政职业能力测验题库.. 147页

2024年黑龙江省绥化市行政职业能力测验题库(.. 147页

2024年黑龙江省齐齐哈尔市行政职业能力测验题.. 147页

云南省红河哈尼族彝族自治州选调生考试(行政.. 148页

公共基础知识内蒙古乌兰察布盟选调生考试(行.. 147页

公共基础知识天津市选调生考试(行政职业能力.. 148页

公共基础知识安徽省池州市选调生考试(行政职.. 148页

公共基础知识山东省烟台市选调生考试(行政职.. 148页

公共基础知识广东省广州市选调生考试(行政职.. 147页

公共基础知识广东省阳江市选调生考试(行政职.. 148页

公共基础知识江苏省淮阴市选调生考试(行政职.. 147页

公共基础知识河北省廊坊市选调生考试(行政职.. 148页

公共基础知识河南省南阳市选调生考试(行政职.. 148页

公共基础知识河南省许昌市选调生考试(行政职.. 148页

公共基础知识浙江省舟山市选调生考试(行政职.. 145页

物业人员培训方案 25页

物业绿化管理方案 14页

供应链管理第6版习题与案例集 4页

监理员安全生产目标责任书 3页

抗肿瘤药物的现状及发展 17页