_2標準ライブラリ関数

math.h

マクロライブラリ

マクロ 説明
HUGE_VAL 関数の結果は、浮動小数点数として表現できない場合。一定の大きな値の名前(HUGE_VAL)の - 結果の大きさが表現するには大きすぎるので、それがある場合、関数はエラーの範囲、及びマクロHUGE_VALまたはその否定によってリターンを表すためにERANGEをerrnoに設定します。あまりにも小さな振幅の結果ならば、ゼロの値が返されます。この場合には、エラーがERANGEに設定することができる、ERANGEとが設定されなくてもよいです。

三角関数

機能 説明
ダブル罪(ダブルアングル) ラジアン角の角度の正弦を返します。
ダブルCOS(ダブルアングル) ラジアン角の角度のコサインを返します。
ダブルタン(ダブルアングル) ラジアン角の角度のタンジェントを返します。
ダブルASIN(double値) アークサインをラジアンの値を返します。
ダブルACOS(double値) ラジアンでアークコサインの値を返します。
ダブルATAN(double値) アークタンジェントをラジアンの値を返します。
ダブルATAN2(ダブルY、ダブルX) 戻るラジアンY / Xの逆正接インチ シンボル値xおよびyは正しい象限を決定します。

注意:

  • sincostan入力パラメータの角度はラジアンです。
  • asinacosそうでない場合は、パラメータ-1~1間のドメイン・エラーは、登場しました。
  • asinatan:範囲の戻り値-pi/2~pi/2との間のラジアンです。
  • acos戻り値は以下のとおりです。-pi~pi間にアーク。

双曲線関数

機能 説明
ダブルSINH(ダブルアングル) ラジアン角の角度の双曲線正弦を返します。
ダブルCOSH(ダブルアングル) ラジアン角の角度の双曲線余弦を返します。
ダブルTANH(ダブルアングル) ラジアン角の角度の双曲線正接を返します。

対数と指数関数

機能 説明
ダブルEXP(ダブルエックス) x乗値eを返します。
ダブルログ(ダブルエックス) Xは、自然対数(対数の底e)を返します。
ダブルLOG10(ダブルエックス) 戻り値Xを常用対数(10を底とする対数)。

浮動小数点表現

機能 説明
ダブルfrexp(ダブルのx、int型*指数) 仮数と指数x分解に浮動小数点数。戻り値は仮数部で、指数は、インデックスに格納されます。結果の値は、x =仮数部* 2 ^指数で、仮数は、関数の戻り値です。
ダブルldexp(ダブルのx、int型の指数) 指数のパワーに2を乗じたXを返します。
ダブルMODF(ダブルのx、ダブル*整数) 戻り値は、小数部分(小数点以下部分)であり、そして一部を整数の整数を設定します。

パワー

機能 説明
ダブルPOW(ダブルのx、ダブルy)は xのy乗を返します。
ダブルSQRT(ダブルエックス) xの平方根を返します。

実数、トップ数、残りの絶対値

機能 説明
ダブルはceil(ダブルエックス) それは、xの最小値以上の整数を返し。
重床(ダブルエックス) x以下の最大の整数値を返します。
ダブルファブ(ダブルエックス) xの絶対値を返します。
ダブルFMOD(ダブルのx、ダブルy)は Yで割ったXの余りを返します。

TIME.H

マクロライブラリ

マクロ 説明
ヌル ヌルポインタ値は一定です。
CLOCKS_PER_SEC なお、第2のプロセッサあたりのクロック数を示しています。

ライブラリ変数

変数 説明
size_tの それはのsizeofキーワードの結果であり、符号なし整数型です。
clock_t プロセッサ時間のためのメモリのタイプがあります。
time_tの これは、カレンダーの時間を保存するのに適したタイプです。
構造体tm 時間と日付を保持する構造体です。

tm次のように構造が定義されています。

struct tm {
   int tm_sec;         /* 秒,范围从 0 到 59        */
   int tm_min;         /* 分,范围从 0 到 59        */
   int tm_hour;        /* 小时,范围从 0 到 23        */
   int tm_mday;        /* 一月中的第几天,范围从 1 到 31    */
   int tm_mon;         /* 月,范围从 0 到 11        */
   int tm_year;        /* 自 1900 年起的年数        */
   int tm_wday;        /* 一周中的第几天,范围从 0 到 6    */
   int tm_yday;        /* 一年中的第几天,范围从 0 到 365    */
   int tm_isdst;       /* 夏令时                */
};

プロセッサ時間

機能 説明
clock_tクロック(無効) 返回程序执行起(一般为程序的开头),处理器时钟所使用的时间。返回值通常是处理器时钟滴答的次数,为了把这个数值转换成秒,需要除以CLOCKS_PER_SEC。

当天时间

函数 说明
time_t time(time_t *timer) 计算当前日历时间,并把它编码成 time_t 格式。

说明:

  • 如果参数是非NULL值,时间值也将通过这个这个指针进行存储。
  • 如果机器无法提供当前的日期和时间,或者时间值太大,无法使用time_t变量表示,函数返回-1
  • 在MS-DOS和UNIX系统中,时刻开始流失的时刻是1970年1月1日00:00:00 。

日期和时间转换

函数 说明
char ctime(const time_t timer) 返回一个表示当地时间的字符串,当地时间是基于参数 timer。
double difftime(time_t time1, time_t time2) 返回 time1 和 time2 之间相差的秒数 (time1-time2)。
struct tm gmtime(const time_t timer) timer 的值被分解为 tm 结构,并用协调世界时(UTC)也被称为格林尼治标准时间(GMT)表示。
struct tm localtime(const time_t timer) timer 的值被分解为 tm 结构,并用本地时区表示。
char asctime(const struct tm timeptr) 返回一个指向字符串的指针,它代表了结构 timeptr 的日期和时间。
size_t strftime(char str, size_t maxsize, const char format, const struct tm *timeptr) 根据 format 中定义的格式化规则,格式化结构 timeptr 表示的时间,并把它存储在 str 中。
time_t mktime(struct tm *timeptr) 把 timeptr 所指向的结构转换为一个依据本地时区的 time_t 值。

注意:

  • strftime格式化代码:
代码 说明
%% 百分号
%a 星期几的简写
%A 星期几的全称
%b 月份的简写
%B 月份的全称
%c 日期和时间
%d 一个月的第几天(01-31)
%H 24小时制的小时(00-23)
%I 12小时制的小时(00-12)
%J 一年的第几天
%m 月数(01-12)
%M 分钟(00-59)
%p 本地的AM或PM的等价显示
%S 秒(00-59)
%U 一年的第几周,把星期日做为第一天(值从0到53)
%w 一星期的第几天,星期日为第0天
%W 一年的地基星期(值从0到53),星期一为第一天
%x 使用本地的日期格式
%X 使用本地的时间格式
%y 当前世纪的年份(00-99)
%Y 年份的全写形式
%Z 时区名称,如果不能得到时区名称则返回空字符。

assert.h

说明
void assert(int expression) 这实际上是一个宏,不是一个函数,可用于在 C 程序中添加诊断。

说明:

  • 如果宏对表达式测试的结果为假,它就向标准错误打印一条诊断信息并终止程序。
  • 当程序被完整测试完毕之后,可以在编译时通过定义NDEBUG消除所有的断言。当NDEBUG被定义后,预处理器将丢弃所有的断言,而不必在程序中把所有的断言实际删除。

ctype.h

函数 说明
int isalnum(int c) 该函数检查所传的字符是否是字母和数字。
int isalpha(int c) 该函数检查所传的字符是否是字母。
int iscntrl(int c) 该函数检查所传的字符是否是控制字符。
int isdigit(int c) 该函数检查所传的字符是否是十进制数字。
int isgraph(int c) 该函数检查所传的字符是否有图形表示法。
int islower(int c) 该函数检查所传的字符是否是小写字母。
int isprint(int c) 该函数检查所传的字符是否是可打印的。
int ispunct(int c) 该函数检查所传的字符是否是标点符号字符。
int isspace(int c) 该函数检查所传的字符是否是空白字符。
int isupper(int c) 该函数检查所传的字符是否是大写字母。
int isxdigit(int c) 该函数检查所传的字符是否是十六进制数字。
int tolower(int c) 该函数把大写字母转换为小写字母。
int toupper(int c) 该函数把小写字母转换为大写字母。

说明:

  • 图形字符:字母、数字字符和标点符号字符的集合。
  • 可打印字符:字母、数字字符、标点符号字符和空格字符的集合。
  • 控制字符:在 ASCII 编码中,这些字符的八进制代码是从 000 到 037,以及 177(DEL)。
  • 空格字符:制表符、换行符、垂直制表符、换页符、回车符、空格符的集合。
  • 空白字符:包括空格符和制表符。

string.h

库变量

变量 说明
size_t 无符号整数类型,它是 sizeof 关键字的结果。

库宏

说明
NULL 是一个空指针常量的值。

字符串长度

函数 说明
size_t strlen(const char *str) 计算字符串 str 的长度,直到空结束字符,但不包括空结束字符。

不受限制的字符串函数

函数 说明
char strcpy(char dest, const char *src) 把 src 所指向的字符串复制到 dest。
char strcat(char dest, const char *src) 把 src 所指向的字符串追加到 dest 所指向的字符串的结尾。
int strcmp(const char str1, const char str2) 把 str1 所指向的字符串和 str2 所指向的字符串进行比较。

长度受限的字符串函数

函数 说明
char strncpy(char dest, const char *src, size_t n) 把 src 所指向的字符串复制到 dest,最多复制 n 个字符。
char strncat(char dest, const char *src, size_t n) 把 src 所指向的字符串追加到 dest 所指向的字符串的结尾,直到 n 字符长度为止。
int strncmp(const char str1, const char str2, size_t n) 把 str1 和 str2 进行比较,最多比较前 n 个字节。

字符串查找

函数 说明
char strchr(const char str, int c) 在参数 str 所指向的字符串中搜索第一次出现字符 c(一个无符号字符)的位置。
char strrchr(const char str, int c) 在参数 str 所指向的字符串中搜索最后一次出现字符 c(一个无符号字符)的位置。
char strpbrk(const char str1, const char *str2) 检索字符串 str1 中第一个匹配字符串 str2 中字符的字符,不包含空结束字符。也就是说,依次检验字符串 str1 中的字符,当被检验字符在字符串 str2 中也包含时,则停止检验,并返回该字符位置。
char strstr(const char haystack, const char *needle) 在字符串 haystack 中查找第一次出现字符串 needle(不包含空结束字符)的位置。
size_t strspn(const char str1, const char str2) 检索字符串 str1 中第一个不在字符串 str2 中出现的字符下标。
size_t strcspn(const char str1, const char str2) 检索字符串 str1 开头连续有几个字符都不含字符串 str2 中的字符。
char strtok(char str, const char *delim) 分解字符串 str 为一组字符串,delim 为分隔符。

内存操作

函数 说明
void memchr(const void str, int c, size_t n) 在参数 str 所指向的字符串的前 n 个字节中搜索第一次出现字符 c(一个无符号字符)的位置。
int memcmp(const void str1, const void str2, size_t n) 把 str1 和 str2 的前 n 个字节进行比较。
void memcpy(void dest, const void *src, size_t n) 从 src 复制 n 个字符到 dest。
void memmove(void dest, const void *src, size_t n) 另一个用于从 src 复制 n 个字符到 dest 的函数。
void memset(void str, int c, size_t n) 复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。

错误信息

函数 说明
char *strerror(int errnum) 从内部数组中搜索错误号 errnum,并返回一个指向错误消息字符串的指针。

其它

函数 说明
int strcoll(const char str1, const char str2) 把 str1 和 str2 进行比较,结果取决于 LC_COLLATE 的位置设置。
size_t strxfrm(char dest, const char src, size_t n) 根据程序当前的区域选项中的 LC_COLLATE 来转换字符串 src 的前 n 个字符,并把它们放置在字符串 dest 中。

おすすめ

転載: www.cnblogs.com/chay/p/11521402.html