C语言标准库中的函数

由于C语言标准库中的函数非常多,我将按类别列出一些常见函数及其作用。请注意,这里不可能列出所有函数,但我会尽量覆盖主要的类别和函数。

### 标准输入输出
- `printf`: 格式化输出到标准输出(通常是屏幕)。
- `scanf`: 从标准输入读取并格式化数据。
- `fprintf`: 格式化输出到文件。
- `sprintf`: 格式化输出到字符串。
- `fgets`: 从文件或标准输入读取字符串。
- `fputs`: 将字符串写入文件或标准输出。
- `putc`: 写入一个字符到文件或标准输出。
- `getchar`: 从标准输入读取一个字符。
- `putchar`: 向标准输出写入一个字符。

### 字符串操作
- `strcpy`: 复制一个字符串到另一个字符串。
- `strncpy`: 复制一个字符串到另一个字符串,最多复制指定数量的字符。
- `strcat`: 将一个字符串添加到另一个字符串的末尾。
- `strncat`: 将一个字符串的部分添加到另一个字符串的末尾。
- `strcmp`: 比较两个字符串。
- `strncmp`: 比较两个字符串的前n个字符。
- `strlen`: 返回字符串的长度。
- `strchr`: 查找字符串中第一次出现指定字符的位置。
- `strrchr`: 查找字符串中最后一次出现指定字符的位置。
- `strstr`: 查找一个字符串在另一个字符串中首次出现的位置。
- `strtok`: 分割字符串为多个由定界符分隔的标记。
- `strtok_r`: 可重入版本的 `strtok`。
- `strspn`: 计算字符串中连续不包含在指定字符集中的字符数量。

### 数学计算
- `sin`, `cos`, `tan`: 计算正弦、余弦和正切值。
- `asin`, `acos`, `atan`: 计算反正弦、反余弦和反正切值。
- `atan2`: 计算两点间的反正切值。
- `sinh`, `cosh`, `tanh`: 计算双曲正弦、双曲余弦和双曲正切值。
- `pow`: 计算 x 的 y 次幂。
- `sqrt`: 计算平方根。
- `fabs`: 计算浮点数的绝对值。
- `floor`: 向下取整到最接近的整数。
- `ceil`: 向上取整到最接近的整数。
- `fmod`: 计算浮点数的模(余数)。

### 动态内存管理
- `malloc`: 分配指定大小的内存块。
- `calloc`: 分配足够存储一个数组的内存,并初始化为0。
- `realloc`: 改变之前分配的内存块的大小。
- `free`: 释放之前分配的内存。

### 时间和日期
- `time`: 获取当前时间。
- `difftime`: 计算两个时间之间的差异。
- `mktime`: 将 `tm` 结构转换为时间_t。
- `gmtime`: 将时间_t转换为 `tm` 结构(UTC时间)。
- `localtime`: 将时间_t转换为 `tm` 结构(本地时间)。
- `asctime`: 将 `tm` 结构转换为可读的字符串。
- `ctime`: 将时间_t转换为可读的字符串。
- `strftime`: 将 `tm` 结构格式化为字符串。

### 文件操作
- `fopen`: 打开一个文件。
- `fclose`: 关闭一个已打开的文件。
- `fread`: 从文件中读取数据。
- `fwrite`: 向文件写入数据。
- `fseek`: 设置文件的读取/写入位置。
- `ftell`: 获取当前文件的读取/写入位置。
- `rewind`: 将文件位置重置为文件开始。
- `feof`: 检查文件是否结束。
- `ferror`: 检查文件是否存在错误。
- `clearerr`: 清除文件的错误和结束标志。
- `remove`: 删除一个文件。
- `rename`: 重命名一个文件。

### 字符分类和转换
- `isalpha`: 检查字符是否为字母。
- `isdigit`: 检查字符是否为数字。
- `isalnum`: 检查字符是否为字母或数字。
- `isspace`: 检查字符是否为空白字符。
- `isupper`: 检查字符是否为大写字母。
- `islower`: 检查字符是否为小写字母。
- `toupper`: 将字符转换为大写。
- `tolower`: 将字符转换为小写。

### 环境和执行控制
- `system`: 执行一个shell命令。
- `exit`: 终止程序并返回状态码。
- `abort`: 异常终止程序。
- `atexit`: 注册一个在程序退出时调用的函数。

### 信号处理
- `signal`: 为程序设置信号处理器。
- `raise`: 发送一个信号给进程。

### 搜索和排序
- `qsort`: 使用快速排序算法对数组进行排序。
- `bsearch`: 在已排序的数组中进行二分查找。

### 系统特定的
- `getenv`: 获取环境变量的值。
- `setenv`, `unsetenv`, `putenv`: 设置或删除环境变量。

### 多线程
- `pthread_create`: 创建一个新线程。
- `pthread_join`: 等待线程终止。
- `pthread_mutex_lock`: 锁定互斥锁。
- `pthread_mutex_unlock`: 解锁互斥锁。

### 网络编程
- `socket`: 创建一个端点(socket)。
- `bind`: 将一个名字绑定到socket。
- `listen`: 设置一个socket为监听状态。
- `accept`: 接受一个连接请求。
- `connect`: 连接到一个socket。
- `send`, `recv`: 发送或接收数据。

### 正则表达式
- `regcomp`: 编译正则表达式。
- `regexec`: 执行正则表达式搜索。
- `regfree`: 释放正则表达式结构。

### 其他
- `memcpy`: 复制内存块。
- `memmove`: 可重叠的内存复制。
- `memcmp`: 比较两个内存块。
- `memset`: 用指定的值填充内存块。
- `rand`: 生成一个伪随机数。
- `srand`: 设置随机数生成器的种子。
- `strtol`: 将字符串转换为长整数。
- `strtoul`: 将字符串转换为无符号长整数。
- `strtod`: 将字符串转换为双精度浮点数。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/370267.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 服务器数据备份 和 mysql 数据迁移

查看域名ip 查看程序所处文件位置 list open files 1、 lsof -i :port 查看端口获取进程 pid 2、lsof -i pid 1、scp 下载服务器文件到本地 security copy protocol 2、导出服务器 mysql 数据库(表)到本地 mysqldump是MySQL自带的一个实用程序&…

CentOS 7.9 停止维护(2024-6-30)后可用在线yum源 —— 筑梦之路

众所周知,centos 7 在2024年6月30日,生命周期结束,官方不再进行支持维护,而很多环境一时之间无法完全更新替换操作系统,因此对于yum源还是需要的,特别是对于互联网环境来说,在线yum源使用方便很…

207 课程表

题目 你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi 。 …

Qt5.9.9 关于界面拖动导致QModbusRTU(QModbusTCP没有测试过)离线的问题

问题锁定 参考网友的思路: Qt5.9 Modbus request timeout 0x5异常解决 网友认为是Qt的bug, 我也认同;网友认为可以更新模块, 我也认同, 我也编译了Qt5.15.0的code并成功安装到Qt5.9.9中进行使用,界面拖…

51单片机嵌入式开发:3、STC89C52操作8八段式数码管原理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 STC89C52操作8八段式数码管原理 1 8位数码管介绍1.1 8位数码管概述1.2 8位数码管原理1.3 应用场景 2 原理图图解2.1 74HC573原理2.2 74HC138原理2.3 数码管原理 3 数码管程序…

树模型详解2-GBDT算法

与adaboost一样,GBDT也是采用前向分步算法,只是它会用决策树cart算法作为基学习器,因此先要从分类树和回归树讲起 决策树-提升树-梯度提升树 决策树cart算法 回归树:叶子结点的值是所有样本落在该叶子结点的平均值 如何构建&a…

【绿色版】Mysql下载、安装、配置与使用(保姆级教程)

大家都知道,Mysql安装版的卸载过程非常繁琐,而且卸载不干净会出现许多问题,很容易让大家陷入重装系统的窘境。基于此,博主今天给大家分享绿色版Mysql的安装、配置与使用。 目录 一、Mysql安装、配置与使用 1、下载解压 2、创建…

zabbix 配置钉钉告警

1.申请一个钉钉企业版 2.群内申请一个机器人 下载电脑版钉钉,登录后,在要接收群消息的群里,点击右上角设置图标,下滑找到机器人,添加一个机器人,保存机器人的webhook地址 保存这里的加签字符串 保存这里的…

深度网络现代实践 - 深度前馈网络之反向传播和其他的微分算法篇

序言 反向传播(Backpropagation,简称backprop)是神经网络训练过程中最关键的技术之一,尤其在多层神经网络中广泛应用。它是一种与优化方法(如梯度下降法)结合使用的算法,用于计算网络中各参数的…

香橙派AIpro开发板评测:部署yolov5模型实现图像和视频中物体的识别

OrangePi AIpro 作为业界首款基于昇腾深度研发的AI开发板,自发布以来就引起了我的极大关注。其配备的8/20TOPS澎湃算力,堪称目前开发板市场中的顶尖性能,实在令人垂涎三尺。如此强大的板子,当然要亲自体验一番。今天非常荣幸地拿到…

Pseudo-Label : The Simple and Efficient Semi-Supervised Learning Method--论文笔记

论文笔记 资料 1.代码地址 https://github.com/iBelieveCJM/pseudo_label-pytorch 2.论文地址 3.数据集地址 论文摘要的翻译 本文提出了一种简单有效的深度神经网络半监督学习方法。基本上,所提出的网络是以有监督的方式同时使用标记数据和未标记数据来训练的…

ASCII码对照表(Matplotlib颜色对照表)

文章目录 1、简介1.1 颜色代码 2、Matplotlib库简介2.1 简介2.2 安装2.3 后端2.4 入门例子 3、Matplotlib库颜色3.1 概述3.2 颜色图的分类3.3 颜色格式表示3.4 内置颜色映射3.5 xkcd 颜色映射3.6 颜色命名表 4、Colorcet库5、颜色对照表结语 1、简介 1.1 颜色代码 颜色代码是…

2024亚太杯数学建模竞赛(B题)的全面解析

你是否在寻找数学建模比赛的突破点?数学建模进阶思路! 作为经验丰富的数学建模团队,我们将为你带来2024亚太杯数学建模竞赛(B题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解…

数据库-MySQL 实战项目——书店图书进销存管理系统数据库设计与实现(附源码)

一、前言 该项目非常适合MySQL入门学习的小伙伴,博主提供了源码、数据和一些查询语句,供大家学习和参考,代码和表设计有什么不恰当还请各位大佬多多指点。 所需环境 MySQL可视化工具:navicat; 数据库:MySq…

MySQL:如何在已经使用的数据表中增加一个自动递增的字段

目录 一、需求 二、实现步骤 (一)数据表students (二)添加整型字段 (三)更新SID字段的值 1、使用用户定义的变量和JOIN操作 2、用SET语句和rownum变量 (1)操作方法 &#x…

使用antd的<Form/>组件获取富文本编辑器输入的数据

前端开发中,嵌入富文本编辑器时,可以通过富文本编辑器自身的事件处理函数将数据传输给后端。有时候,场景稍微复杂点,比如一个输入页面除了要保存富文本编辑器的内容到后端,可能还有一些其他输入组件获取到的数据也一并…

MySQL篇三:数据类型

文章目录 前言1. 数值类型1.1 tinyint类型1.2 bit类型1.3 小数类型1.3.1 float1.3.2 decimal 2. 字符串类型2.1 char2.2 varchar2.3 char和varchar比较 3. 日期类型4. enum和set 前言 数据类型分类: 1. 数值类型 1.1 tinyint类型 在MySQL中,整型可以指…

如何第一次从零上传项目到GitLab

嗨,我是兰若,今天想给大家说下,如何上传一个完整的项目到与LDAP集成的GitLab,也就是说这个项目之前是不在git上面的,这是第一次上传,这样上传上去之后,其他小伙伴就可以根据你这个项目的git地址…

自动批量将阿里云盘文件发布成WordPress文章脚本源码(以RiPro主题为例含付费信息下载地址SEO等自动设置)源码

背景 很多资源下载站,付费资源下载站,付费内容查看等都可以用WordPress站点发布内容,这些站点一般会基于一个主题,付费信息作为文章附属的信息发布,底层存储在WP表里,比如日主题,子比主题等。 …

2-5 softmax 回归的简洁实现

我们发现通过深度学习框架的高级API能够使实现线性回归变得更加容易。 同样,通过深度学习框架的高级API也能更方便地实现softmax回归模型。 本节如在上节中一样, 继续使用Fashion-MNIST数据集,并保持批量大小为256。 import torch from torc…