C语言:关于socket的基础知识点
/**
* ---结构体---
*
* #include <sys/socket.h>
* struct sockaddr {
* unsigned short sa_family;
* char sa_data[14];
* }
*
* #include <netinet/in.h>
* struct sockaddr_in {
* short int sin_family; //sa_family_t
* unsigned short sin_port; //in_port_t
* struct in_addr sin_addr;
* unsigned char sin_zero[8];
* }
*
* #include <netinet/in.h>
* sturct in_addr {
* uint32_t s_addr;
* }
*/ /**
* --IP转换---
* ulong inet_addr(const char *ip); //将一个点分十进制的ip转换成一个网络字节序的长整型数
* int inet_aton(const char *ip, struct in_addr *inp); //将一个字符串ip转换成一个32位的网络字节序
* char *inet_ntoa(sturct in_addr in);
*/ /**
* ---域名转换---
* #include <netdb.h>
* struct hostent{
* char *h_name;
* char **h_aliases;
* short h_addrtype;
* short h_length;
* char **h_addr_list;
* }
* #define h_addr h_addr_list[0]
* sturct hostent *h = gethostbyname(const char *hostname); //结果会存在resbuf里边
*
*/ /**
* ---字节序转换---
* #include <arpa/inet.h>
* uint32_t htonl(uint32_t hostlong)
* uint32_t ntohl(uint32_t hostlong)
* uint16_t htons(unit16_t hostshort)
* uint16_t ntohs(uint16_t hostshort)
*/ /**
*
*/ /**
* int socket(int domain, int type, int protocol);
* int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
* int listen(int sockfd, int backlog);
* int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
* int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
* int send(int sockfd, const void *buf, size_t len, int flags);
* int recv(int sockfd, void *buf, size_t len, int flags);
*/
C语言:关于socket的基础知识点的更多相关文章
- c语言学习之基础知识点介绍(二):格式化控制符和变量的补充
上节简单介绍了c语言中的一些基础知识点,本节将对之前介绍的不够详细的知识点进行补充. 格式化控制符的消息介绍: %d的其他控制符: 1.%md:m代表这个整数位占用多少位,m是一个整数.实际数字不足的 ...
- JavaScript语言基础知识点图示(转)
一位牛人归纳的JavaScript 语言基础知识点图示. 1.JavaScript 数据类型 2.JavaScript 变量 3.Javascript 运算符 4.JavaScript 数组 5.Ja ...
- JavaScript 语言基础知识点总结
网上找到的一份JavaScript 语言基础知识点总结,还不错,挺全面的. (来自:http://t.cn/zjbXMmi @刘巍峰 分享 )
- c语言学习之基础知识点介绍(三):scanf函数
本节继续介绍c语言的基础知识点. scanf函数:用来接收用户输入的数据. 语法:scanf("格式化控制符",地址列表); 取地址要用到取地址符:&(shift+7) 例 ...
- JavaScript语言基础知识点图示
原文:JavaScript语言基础知识点图示 一位牛人归纳的JavaScript 语言基础知识点图示. 1.JavaScript 数据类型 2.JavaScript 变量 3.Javascript 运 ...
- .NET基础知识点
.NET基础知识点 l .Net平台 .Net FrameWork框架 l .Net FrameWork框架提供了一个稳定的运行环境,:来保障我们.Net平台正常的运转 l 两种交 ...
- JavaScript 开发者经常忽略或误用的七个基础知识点(转)
JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...
- JavaScript 开发者经常忽略或误用的七个基础知识点
JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...
- JavaScript开发者常忽略或误用的七个基础知识点
JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...
随机推荐
- UWP开发中两种网络图片缓存方法
通常情况下,我们的程序需要从服务器读取图片,但如果需要不止一次读取某一张图片的话,就需要做本地缓存了,这样既为用户省一点流量,又能显得你的APP很快. 假如你已经知道了某一张图片的地址,那么第一件事就 ...
- Android SharedPreference的使用
在<Android 在内部存储读写文件>一文中,谈到了登录用户名和密码的方法,通过读取内存文件来实现,但是会出现问题,因为登录名和密码的形式通过username##password的形式, ...
- C语言ASCII码、运算符优先级、转义字符
- Git的常用操作,记录下
首先生成密钥 ssh-keygen -t rsa -C "your_email@youremail.com" 然后打开workdir,敲 git init 设置一个远端库 git ...
- Flex各类型坐标转换(全局、本地、内容坐标间转换)
Flex包含3种坐标:全局坐标.本地坐标.内容坐标 全局坐标:stage级别,坐标原点为舞台的左上角,如MouseEvent的stageX.stageY坐标. 本地坐标:组件级别的坐标系,相对坐标,坐 ...
- JDK7学习笔记之基础类型
printf()的基础用法: 变量的基础用法: 字符的输出:
- 高性能MySQL笔记:第1章 MySQL架构
MySQL 最重要.最与众不同的特性是他的存储引擎架构,这种架构的设计将查询处理(Query Precessing)及其系统任务(Server Task)和数据的存储/提取相分离. 1.1 MyS ...
- 理解linux and inode
inode是一个重要概念,是理解Unix/Linux文件系统和硬盘储存的基础. 我觉得,理解inode,不仅有助于提高系统操作水平,还有助于体会Unix设计哲学,即如何把底层的复杂性抽象成一个简单概念 ...
- mysql级联更新
MySQL 各种级联查询后更新(update select). CREATE TABLE `tb1` ( `id` int(11) NOT NULL, `A` varchar(100) defa ...
- 支付宝APP支付开发- IOException : DER input, Integer tag error
支付宝APP支付Java开发报错: 1 java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: I ...