C语言常见头文件及引入功能

1. <stdio.h>

  • 功能:标准输入输出库。

  • 常用函数

    • printf:格式化输出。

    • scanf:格式化输入。

    • fprintf:向文件流输出。

    • fgets:从文件流读取字符串。

  • 用途

    • 用于输入输出操作,如打印日志、读取用户输入等。

2. <stdlib.h>

  • 功能:标准库函数。

  • 常用函数

    • malloc:动态分配内存。

    • free:释放动态分配的内存。

    • exit:终止程序。

    • atoi:将字符串转换为整数。

    • rand:生成伪随机数。

  • 用途

    • 用于内存管理、程序控制、类型转换等。

3. <string.h>

  • 功能:字符串处理库。

  • 常用函数

    • strcpy:复制字符串。

    • strcat:连接字符串。

    • strlen:获取字符串长度。

    • strcmp:比较字符串。

    • memset:初始化内存区域。

    • memcpy:复制内存区域。

  • 用途

    • 用于字符串操作和内存操作。

4. <unistd.h>

  • 功能:POSIX 标准库。

  • 常用函数

    • fork:创建子进程。

    • exec:执行新程序。

    • sleep:暂停程序执行。

    • getpid:获取当前进程 ID。

    • read:从文件描述符读取数据。

    • write:向文件描述符写入数据。

  • 用途

    • 用于进程控制、文件操作、系统调用等。

5. <arpa/inet.h>

  • 功能:网络编程库。

  • 常用函数

    • inet_addr:将点分十进制 IP 地址转换为二进制格式。

    • inet_ntoa:将二进制 IP 地址转换为点分十进制格式。

    • htons:将主机字节序转换为网络字节序(16 位)。

    • htonl:将主机字节序转换为网络字节序(32 位)。

    • ntohs:将网络字节序转换为主机字节序(16 位)。

    • ntohl:将网络字节序转换为主机字节序(32 位)。

  • 用途

    • 用于网络编程中的地址转换和字节序处理。

6. <time.h>

  • 功能:时间处理库。

  • 常用函数

    • time:获取当前时间。

    • ctime:将时间转换为字符串。

    • localtime:将时间转换为本地时间结构。

    • strftime:格式化时间输出。

  • 用途

    • 用于获取和操作时间。

7. <stdint.h>

  • 功能:固定宽度整数类型。

  • 常用类型

    • int8_t:8 位有符号整数。

    • uint8_t:8 位无符号整数。

    • int16_t:16 位有符号整数。

    • uint16_t:16 位无符号整数。

    • int32_t:32 位有符号整数。

    • uint32_t:32 位无符号整数。

    • int64_t:64 位有符号整数。

    • uint64_t:64 位无符号整数。

  • 用途

    • 用于定义固定宽度的整数类型,确保跨平台兼容性。

8. <pthread.h>

  • 功能:POSIX 线程库。

  • 常用函数

    • pthread_create:创建线程。

    • pthread_join:等待线程结束。

    • pthread_mutex_init:初始化互斥锁。

    • pthread_mutex_lock:加锁。

    • pthread_mutex_unlock:解锁。

  • 用途

    • 用于多线程编程。

9. <fcntl.h>

  • 功能:文件控制库。

  • 常用函数

    • open:打开文件。

    • close:关闭文件。

    • fcntl:控制文件描述符。

  • 用途

    • 用于文件操作。

10. <termios.h>

  • 功能:终端控制库。

  • 常用函数

    • tcgetattr:获取终端属性。

    • tcsetattr:设置终端属性。

    • cfsetispeed:设置输入波特率。

    • cfsetospeed:设置输出波特率。

  • 用途

    • 用于终端配置和控制。

11. <errno.h>

  • 功能:错误处理库。

  • 常用变量

    • errno:存储错误代码。

  • 常用函数

    • perror:打印错误信息。

  • 用途

    • 用于错误处理和调试。

12. <signal.h>

  • 功能:信号处理库。

  • 常用函数

    • signal:设置信号处理函数。

    • raise:发送信号。

    • kill:向进程发送信号。

  • 用途

    • 用于信号处理和进程间通信。

13. <microhttpd.h>

功能:GNU libmicrohttpd 库,用于创建嵌入式 HTTP 服务器。

常用函数:

  • MHD_start_daemon:启动 HTTP 服务器。

  • MHD_stop_daemon:停止 HTTP 服务器。

  • MHD_create_response_from_buffer:从缓冲区创建 HTTP 响应。

  • MHD_queue_response:将 HTTP 响应加入队列并发送给客户端。

  • MHD_destroy_response:销毁 HTTP 响应。

  • MHD_add_response_header:添加 HTTP 响应头。

  • MHD_get_connection_values:获取 HTTP 请求头或查询参数。

  • MHD_create_response_from_callback:从回调函数创建 HTTP 响应。

  • MHD_access_handler_callbacks:处理 HTTP 请求的回调函数。

用途:

用于创建轻量级嵌入式 HTTP 服务器,适合需要提供 Web 服务的嵌入式系统。

14. <mongoose.h>

功能:Mongoose 库,用于创建嵌入式 Web 服务器和网络服务,支持 HTTP、WebSocket、MQTT 等协议。

常用函数:

  • mg_mgr_init:初始化事件管理器。

  • mg_http_listen:监听 HTTP 请求。

  • mg_mgr_poll:处理事件循环。

  • mg_http_reply:发送 HTTP 响应。

  • mg_send:发送数据。

  • mg_mqtt_listen:监听 MQTT 请求。

  • mg_mgr_free:释放事件管理器资源。

  • mg_http_serve_dir:提供静态文件服务。

  • mg_http_serve_file:提供单个文件服务。

  • mg_ws_upgrade:升级 HTTP 连接为 WebSocket 连接。

用途:

  • 嵌入式 Web 服务器:在嵌入式设备中提供 Web 管理界面。

  • RESTful API 服务:提供简单的 HTTP API。

  • WebSocket 服务:实现实时通信。

  • MQTT 代理:实现轻量级的 MQTT 消息传递。

  • 网络工具:快速搭建网络测试工具或原型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值