B/S: 浏览器和服务器模式
只需要写服务器,客户端都是使用的浏览器
偷菜游戏,网页版的qq斗地址
优点:
维护简单,客户端不需要维护
不容易偷数据,
开发相对简单一些
不依赖环境
缺点:
客户端所有的计算,都需要服务器来完成,数据传输量大,客户端连接量太大服务器承受不了
B/S模式只适用于对性能要求较低的应用
C/S: 客户端和服务器模式
客户端和服务器都需要开发
英雄联盟,QQ,wechat,cs,
优点:
客户端可以满足较高性能的程序,客户端的很多数据的计算都是由客户端电脑自己完成
缺点:
不安全,容易被偷数据
开发相对难度大一些,需要维护客户端和服务器
字节序转换函数
uint32_t htonl(uint32_t hostint32);
功能:
将32位主机字节序数据转换成网络字节序数据
参数:
hostint32:待转换的32位主机字节序数据
返回值:
成功:返回网络字节序的值
头文件:
#include <arpa/inet.h>
htons函数
uint16_t htons(uint16_t hostint16);
功能:
将16位主机字节序数据转换成网络字节序数据
参数:
uint16_t:unsigned short int
hostint16:待转换的16位主机字节序数据
返回值:
成功:返回网络字节序的值
头文件:
#include <arpa/inet.h>
ntohl函数
uint32_t ntohl(uint32_t netint32);
功能:
将32位网络字节序数据转换成主机字节序数据
参数:
uint32_t: unsigned int
netint32:待转换的32位网络字节序数据
返回值:
成功:返回主机字节序的值
头文件:
#include <arpa/inet.h>
ntohs函数
uint16_t ntohs(uint16_t netint16);
功能:
将16位网络字节序数据转换成主机字节序数据
参数:
uint16_t: unsigned short int
netint16:待转换的16位网络字节序数据
返回值:
成功:返回主机字节序的值
头文件:
#include <arpa/inet.h>