c 和 c++

常用库

计算相关

gmp GMP 是一个用于任意精度算术的免费库,可对有符号整数、有理数和浮点数进行操作

libmicrohttpd GNU libmicrohttpd 是一个小型 C 库,可以轻松地将 HTTP 服务器作为另一个应用程序的一部分运行

TCP/UDP 相关

libcurl libcurl 是一个免费且易于使用的客户端 URL 传输库,支持 DICT、FILE、FTP、FTPS、GOPHER、GOPHERS、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、MQTT、POP3、POP3S、RTMP、 RTMPS、RTSP、SCP、SFTP、SMB、SMBS、SMTP、SMTPS、TELNET 和 TFTP。libcurl 支持 SSL 证书、HTTP POST、HTTP PUT、FTP 上传、基于 HTTP 表单的上传、代理、HTTP/2、HTTP/3、cookie、用户+密码身份验证(基本、摘要、NTLM、协商、Kerberos)、文件传输恢复、http 代理隧道等等!

安全相关

GnuTLS GnuTLS 是一个安全通信库,实现了SSL、TLS 和 DTLS 协议 及相关技术。它提供了一个简单的 C 语言应用程序编程接口 (API) 来访问安全通信协议以及解析和编写 X.509、PKCS #12 和其他所需结构的 API。 该项目致力于提供安全的通信后端、 易于使用并与其他基础 Linux 库集成。后端设计为开箱即用且安全,使 TLS 和 PKI 的复杂性远离应用程序代码。

压缩相关

zlib zlib被设计为一个免费、通用、不受法律限制(即不受任何专利保护)的无损数据压缩库,几乎可以在任何计算机硬件和操作系统上使用.

序列化相关

jansson

g++/gcc 安装

yum install gcc
yum install gcc-c++ libstdc++-deve

基本数据类型大小(单位:字节(byte))

sizof(char)=1 
sizof(int)=4 
sizof(short int)=2 
sizof(long int)=8 
sizof(long)=8 
sizof(float)=4 

sizof(uint)=4 
sizof(uint16_t)=2 
sizof(uint32_t)=4 
sizof(uint64_t)=8 
sizof(uint8_t)=1 
sizof(stru_empty)=1 
sizof(stru1)=12 

sizof(stru2)=8 

sizof(stru3)=12 

sizof(stru4)=8 

sizof(stru5)=16 

sizof(stru6)=20 
sizof(stru6.tt)=8 
the address of stru6.i=-1112611352 
the address of stru6.a=-1112611340 

sizof(stru7)=12 
sizof(stru7)=1 
the address of stru7.i=-1112611368 
the address of stru7.a=-1112611366 

sizof(ar)=20 
sizof(ar.f)=4 
sizof(ar.arr)=12 
支付宝打赏 微信打赏

来杯咖啡~

文章导航