c语言 头文件 手札

2024-09-02 08:18
文章标签 语言 头文件 手札

本文主要是介绍c语言 头文件 手札,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

     


 序号 库类别          头文件
      ----------------------------------------
      0   错误处理             errno.h
      1   字符处理             ctype.h
      2   地区化                 local.h
      3   数学函数              math.h
      4   本分类函数          setjmp.h io.h
      5   信号处理              signal.h
      6   可变参数处理       stdarg.h
      7   输入输出              stdio.h  
      8   实用工具程序       stdlib.h
      9   字符串处理           string.h
     10  日期和时间函数    time.h



1.   ctype.h

      字符处理函数: 本类别函数用于对单个字符进行处理,包括字符的类别测试和字符的大小写转换
      ----------------------------------------
      字符测试是否字母和数字 isalnum
      是否字母 isalpha
      是否控制字符 iscntrl
      是否数字 isdigit
      是否可显示字符(除空格外) isgraph
      是否可显示字符(包括空格) isprint
      是否既不是空格,又不是字母和数字的可显示字符 ispunct
      是否空格 isspace
      是否大写字母 isupper
      是否16进制数字(0-9,A-F)字符 isxdigit
      字符大小写转换函数 转换为大写字母 toupper
      转换为小写字母 tolower



2.  头文件 local.h
      地区化: 本类别的函数用于处理不同国家的语言差异。
      ----------------------------------------
      地区控制 地区设置 setlocale
      数字格式约定查询 国家的货币、日期、时间等的格式转换 localeconv



3. 头文件 math.h
      数学函数: 本分类给出了各种数学计算函数,必须提醒的是ANSI
      C标准中的数据格式并不符合IEEE754标准,一些C语言编译器却遵循IEEE754(例如frinklin C51)
      ----------------------------------------

      反余弦 acos
      反正弦 asin
      反正切 atan
      反正切2 atan2
      余弦 cos
      正弦 sin
      正切 tan

      双曲余弦 cosh
      双曲正弦 sinh
      双曲正切 tanh

      指数函数 exp
      指数分解函数 frexp
      乘积指数函数 fdexp
      自然对数 log
      以10为底的对数 log10
      浮点数分解函数 modf

      幂函数 pow
      平方根函数 sqrt

      求下限接近整数 ceil
      绝对值 fabs
      求上限接近整数 floor
      求余数 fmod



4.  头文件 setjmp.h io.h
      本分类函数用于实现在不同底函数之间直接跳转代码。
      ----------------------------------------
      保存调用环境 setjmp
      恢复调用环境 longjmp




5. 头文件 signal.h
      信号处理: 该分类函数用于处理那些在程序执行过程中发生例外的情况。
      ----------------------------------------
      指定信号处理函数 signal
      发送信号 raise




6.   头文件 stdarg.h
      可变参数处理: 本类函数用于实现诸如printf,scanf等参数数量可变底函数。
      ----------------------------------------
      可变参数访问宏
      可变参数开始宏 va_start
      可变参数结束宏 va_end
      可变参数访问宏 访问下一个可变参数宏 va_arg




7. 头文件 stdio.h
      输入输出函数:该分类用于处理包括文件、控制台等各种输入输出设备,各种函数以“流”的方式实现
      ----------------------------------------
      删除文件 remove
      修改文件名称 rename
      生成临时文件名称 tmpfile
      得到临时文件路径 tmpnam
      文件访问 关闭文件 fclose
      刷新缓冲区 fflush
      打开文件 fopen
      将已存在的流指针和新文件连接 freopen
      设置磁盘缓冲区 setbuf
      设置磁盘缓冲区 setvbuf

      格式化输入与输出函数
      格式输出 fprintf
      格式输入 fscanf
      格式输出(控制台) printf
      格式输入(控制台) scanf
      格式输出到缓冲区 sprintf
      从缓冲区中按格式输入 sscanf
      格式化输出 vfprintf
      格式化输出 vprintf
      格式化输出 vsprintf

      字符输入输出函数
      输入一个字符 fgetc
      字符串输入 fgets
      字符输出 fputc
      字符串输出 fputs
      字符输入(控制台) getc
      字符输入(控制台) getchar
      字符串输入(控制台) gets
      字符输出(控制台) putc
      字符输出(控制台) putchar
      字符串输出(控制台) puts
      字符输出到流的头部 ungetc

      直接输入输出
      直接流读操作 fread
      直接流写操作 fwrite

      文件定位函数
      得到文件位置 fgetpos
      文件位置移动 fseek
      文件位置设置 fsetpos
      得到文件位置 ftell
      文件位置复零位 remind

      错误处理函数
      错误清除 clearerr
      文件结尾判断 feof
      文件错误检测 ferror
      得到错误提示字符串 perror




8. 头文件 stdlib.h
      实用工具函数: 本分类给出了一些函数无法按以上分类,但又是编程所必须要的。
      ----------------------------------------
      字符串转换函数
      字符串转换为整数 atoi
      字符串转换为长整数 atol
      字符串转换为浮点数 strtod
      字符串转换为长整数 strtol
      字符串转换为无符号长整型 strtoul

      伪随机序列产生函数
      产生随机数 rand
      设置随机函数的起动数值 srand

      存储管理函数
      分配存储器 calloc
      释放存储器 free
      存储器分配 malloc
      重新分配存储器 realloc

      环境通信
      中止程序 abort
      退出程序执行,并清除环境变量 atexit
      退出程序执行 exit
      读取环境参数 getenv
      程序挂起,临时执行一个其他程序 system
      搜索和排序工具 二分查找(数据必须已排序) bsearch
      快速排序 qsort
      整数运算函数 求绝对值 abs
      得到除法运算底商和余数 div
      求长整形底绝对值 labs
      求长整形除法的商和余数 ldiv
      多字节字符函数 得到多字节字符的字节数 mblen
      得到多字节字符的字节数 mbtowc
      多字节字符转换 wctomb
      多字节字符的字符串操作 将多字节串转换为整数数组 mbstowcs
      将多字节串转换为字符数组 mcstowbs




9.  头文件 string.h
      字符串处理: 本分类的函数用于对字符串进行合并、比较等操作
      ----------------------------------------
      字符串拷贝 块拷贝(目的和源存储区不可重叠) memcpy
      块拷贝(目的和源存储区可重叠) memmove
      串拷贝 strcpy
      按长度的串拷贝 strncpy
      字符串连接函数 串连接 strcat
      按长度连接字符串 strncat
      串比较函数 块比较 memcmp
      字符串比较 strcmp
      字符串比较(用于非英文字符) strcoll
      按长度对字符串比较 strncmp
      字符串转换 strxfrm
      字符与字符串查找 字符查找 memchr
      字符查找 strchr
      字符串查找 strcspn
      字符串查找 strpbrk
      字符串查找 strspn
      字符串查找 strstr
      字符串分解 strtok
      杂类函数 字符串设置 memset
      错误字符串映射 strerror
      求字符串长度 strlen




10.头文件 time.h
      日期和时间函数: 本类别给出时间和日期处理函数
      ----------------------------------------
      时间操作函数得到处理器时间 clock
      得到时间差 difftime
      设置时间 mktime
      得到时间 time
      时间转换函数 得到以ASCII码表示的时间 asctime
      得到字符串表示的时间 ctime
      得到指定格式的时间 strftime



这篇关于c语言 头文件 手札的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1129465

相关文章

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

如何确定 Go 语言中 HTTP 连接池的最佳参数?

确定 Go 语言中 HTTP 连接池的最佳参数可以通过以下几种方式: 一、分析应用场景和需求 并发请求量: 确定应用程序在特定时间段内可能同时发起的 HTTP 请求数量。如果并发请求量很高,需要设置较大的连接池参数以满足需求。例如,对于一个高并发的 Web 服务,可能同时有数百个请求在处理,此时需要较大的连接池大小。可以通过压力测试工具模拟高并发场景,观察系统在不同并发请求下的性能表现,从而

C语言:柔性数组

数组定义 柔性数组 err int arr[0] = {0}; // ERROR 柔性数组 // 常见struct Test{int len;char arr[1024];} // 柔性数组struct Test{int len;char arr[0];}struct Test *t;t = malloc(sizeof(Test) + 11);strcpy(t->arr,

C语言指针入门 《C语言非常道》

C语言指针入门 《C语言非常道》 作为一个程序员,我接触 C 语言有十年了。有的朋友让我推荐 C 语言的参考书,我不敢乱推荐,尤其是国内作者写的书,往往七拼八凑,漏洞百出。 但是,李忠老师的《C语言非常道》值得一读。对了,李老师有个官网,网址是: 李忠老师官网 最棒的是,有配套的教学视频,可以试看。 试看点这里 接下来言归正传,讲解指针。以下内容很多都参考了李忠老师的《C语言非

C 语言基础之数组

文章目录 什么是数组数组变量的声明多维数组 什么是数组 数组,顾名思义,就是一组数。 假如班上有 30 个同学,让你编程统计每个人的分数,求最高分、最低分、平均分等。如果不知道数组,你只能这样写代码: int ZhangSan_score = 95;int LiSi_score = 90;......int LiuDong_score = 100;int Zhou

C 语言的基本数据类型

C 语言的基本数据类型 注:本文面向 C 语言初学者,如果你是熟手,那就不用看了。 有人问我,char、short、int、long、float、double 等这些关键字到底是什么意思,如果说他们是数据类型的话,那么为啥有这么多数据类型呢? 如果写了一句: int a; 那么执行的时候在内存中会有什么变化呢? 橡皮泥大家都玩过吧,一般你买橡皮泥的时候,店家会赠送一些模板。 上

linux中使用rust语言在不同进程之间通信

第一种:使用mmap映射相同文件 fn main() {let pid = std::process::id();println!(