stdio.h

printf()/fprintf()

printf的返回值是打印的字符数, 发生错误则返回负数

scanf()/fscanf()

scanf的返回值是成功赋值的变量个数, 失败则返回EOF

getc()/putc()

读取/写入字符

fgets()/fputs()

fgets()不同于gets(), fgets()会尽可能保证读取的字符串末尾有换行符. 同样, fputs()写入是不会自动添加换行符, 这二者可以很好地配合.需要注意的是, fgets()可以防止存储溢出, 因此, 相较于gets(), fgets()是一个更好的选择

fseek()/ftell()

fseek()用于移动文件位置, ftell()用于确定文件位置

fgetpos()/fsetpos()

相较于上两个使用long类型来表示文件位置函数, 这两个函数使用fpos_t类型, 能处理更大的文件

ungetc()

将一个指定字符放回到stdin中, 这样下一次调用标准输入函数是就会读入那个字符.

fflush()

用于刷新缓冲区(flushing a buffer), 使用fflush(stdout)可以获取实时的输出

feof()/ferror()

feof()用于判断文件是否到达结尾, ferror()用于判断流中是否发生错误

freopen()

用于stdin的重定向, 将stdin重新打开为某个文件, 对于调试来说很方便

fread()/fwrite()

读取/写入一定长度二进制文件内容并放在指定的内存地址中/文件中, 一般不用于操作ascii文件. 返回值是成功读取/写入对象的数量

math.h

函数名称 用途
abs() 求绝对值
fabs() 浮点数绝对值
acos() 反余弦
asin() 反正弦
atan() 反正切
cos() 余弦
sin() 正弦
tan() 正切
ceil() 上界
floor() 下界
log() 自然对数
pow()
sqrt() 平方根
exp() e的幂

string.h

memset()

填充指定的内存块. 常用于快速清零数组或结构体.

memcpy()

拷贝指定的内存块. 如果源内存和目标内存存在重叠, 会出错.

memmove()

功能与memcpy相同, 但允许源内存与目标内存存在重叠.

memcmp()

比较指定的两个内存块

atoi()

字符串转整数

strpbrk()

在字符串s2中搜索字符串s1

stdlib.h

qsort()

快速排序. 原型为

void qsort(void*base,size_t num,size_t width,int(__cdecl*compare)(const void*,const void*));

base是数组首地址, num是待排序元素数量, width是一个元素占用空间大小,compare是函数指针, 例如, 对整数升序排序, compare可以这么写:

int comp(const void *a, const void *b)
{
return *(int*)a - *(int*)b;
}

bsearch()

二分法搜索, 原型为:

void *bsearch(const void *key, const void *base, size_t nelem, size_t width, int(*fcmp)(const void *, const void *));

key为待查找关键字指针, buf为待查找数组

bsearch()常与qsort()一起使用

system()

调用系统指令

C标准库常用函数概要的更多相关文章

  1. Atitit 数据库 标准库  sdk 函数库 编程语言 mysql oracle  attilax总结

    Atitit 数据库 标准库  sdk 函数库 编程语言 mysql oracle  attilax总结 1.1. 常见的编程语言以及数据库 sql内部函数库标准化库一般有以下api1 1.2. 各个 ...

  2. Python math库常用函数

    math库常用函数及举例: 注意:使用math库前,用import导入该库>>> import math 取大于等于x的最小的整数值,如果x是一个整数,则返回x>>> ...

  3. c/c++ 标准库 bind 函数 详解

    标准库 bind 函数 详解 bind函数:接收一个函数名作为参数,生成一个新的函数. auto newCallable = bind(callbale, arg_list); arg_list中的参 ...

  4. Matplotlib库常用函数大全

    Python之Matplotlib库常用函数大全(含注释) plt.savefig(‘test’, dpi = 600) :将绘制的图画保存成png格式,命名为 test plt.ylabel(‘Gr ...

  5. Python之Numpy库常用函数大全(含注释)

    前言:最近学习Python,才发现原来python里的各种库才是大头! 于是乎找了学习资料对Numpy库常用的函数进行总结,并带了注释.在这里分享给大家,对于库的学习,还是用到时候再查,没必要死记硬背 ...

  6. Python之Numpy库常用函数大全(含注释)(转)

    为收藏学习,特转载:https://blog.csdn.net/u011995719/article/details/71080987 前言:最近学习Python,才发现原来python里的各种库才是 ...

  7. c++多线程编程:实现标准库accumulate函数的并行计算版本

    今天使用c++实现了标准库头文件<numeric>中的accumulate函数的并行计算版本,代码如下,注释写的比较详细,仅对其中几点进行描述: ①该实现假定不发生任何异常,故没有对可能产 ...

  8. SymPy库常用函数

    简介 SymPy是一个符号计算的Python库.它的目标是成为一个全功能的计算机代数系统,同时保持代码简 洁.易于理解和扩展.它完全由Python写成,不依赖于外部库.SymPy支持符号计算.高精度计 ...

  9. 【转】 C++库常用函数一览

    本文中提到的函数库有:<string> <cctype> <algorithm> <cmath> <cstdlib> <iomanip ...

随机推荐

  1. Echarts案例-柱状图

    一:先在官网下载 https://www.echartsjs.com/zh/download.html 然后再建立工程,导入这两个包: 写代码: <!DOCTYPE html> <h ...

  2. 为ubuntu找个能用的桌面,顺便进行适当的改造

    最近,开始玩ros,结果官方推荐ubuntu linux,虽然都是差不多的linux,无非就是软件包形式不同而已.但是,个人对ubuntu的unity桌面实在是没有爱,最让人无语的是,kubuntu无 ...

  3. Contest Hunter 3101

    题目 Contest Hunter 3101 阶乘分解 原题传送门 题目分析 这里介绍一个本蒟蒻自己\(yy\)出来的方法. 我们发现,对于某一个单个的整数\(n\),若\(n\)能被某一个数\(x\ ...

  4. Mysql中行转列和列转行

    一.行转列 即将原本同一列下多行的不同内容作为多个字段,输出对应内容. 建表语句 DROP TABLE IF EXISTS tb_score; CREATE TABLE tb_score(    id ...

  5. pwn学习日记Day20 《程序员的自我修养》读书笔记

    可执行文件的装载与进程 覆盖装入和页映射是两种典型的动态装载方法 进程建立的三步 1.创建一个独立的虚拟地址空间 2.读取可执行文件头,并且建立虚拟空间与可执行文件的映射关系. 3.将CPU的指令寄存 ...

  6. QT 自定义消息

    #define TEST_EVENT QEvent::User + 100   class CVxActuatorMain : public QMainWindow {   protected:    ...

  7. centos7 搭建FTP

    通过yum安装vsftpd yum install -y vsftpd 修改vsftpd的配置文件 vim /etc/vsftpd/vsftpd.conf 修改配置文件如下: 1.不允许匿名访问 an ...

  8. 图解 HTTP 笔记(二)——简单的 HTTP 协议

    本章主要以 HTTP 1.0 为例,讲解 HTTP 协议的基本结构. 在两台计算机之间使用 HTTP 协议进行通讯时,在一条通讯线路上必定有一端是客户端,另一端则是服务器端. 请求访问文本或图像等资源 ...

  9. AJAX的个人见解

    ajax是什么? 在学习的过程中,我虽然在学习ajax但是对ajax的具体的意义不甚了解,对此我们就来看看什么ajax吧. Ajax的全称是:AsynchronousJavaScript+XML 2. ...

  10. Spring Aop(七)——基于XML配置的Spring Aop

    转发:https://www.iteye.com/blog/elim-2396043 7 基于XML配置的Spring AOP 基于XML配置的Spring AOP需要引入AOP配置的Schema,然 ...