精华内容
下载资源
问答
  • C++中stdlib.h头文件介绍

    万次阅读 多人点赞 2014-08-10 10:30:24
    stdlib头文件即standard library标准库头文件,stdlib头文件里包含了C、C++yuya

    stdlib头文件即standard library标准库头文件,stdlib头文件里包含了C、C++语言的最常用的系统函数,该文件包含了C语言标准库函数的定义,stdlib.h中定义了物种类型:一些宏和通用工具函数。类型如:size_t、wchar_t、div_t、ldiv_t和lldiv_t;宏例如EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等;常用的函数如:malloc(),calloc(),free().system(),atoi(),atol(),rand().srand(),exit()等等。

    stdlib.h是C标准函数库头文件,声明了数值与字符串转换函数, 伪随机数生成函数, 动态内存分配函数, 进程控制函数等等。C++程序应调用等价的cstdlib头文件。

      stdlib.h中定义的常量


    stdlib.h中定义的数据类型:


    stdlib.h声明的库函数可分为六类:类型转换、伪随机数、动态内存分配与回收管理、进程控制、搜索及排序、简单数学。








    展开全文
  • C语言stdlib头文件解析

    千次阅读 多人点赞 2018-01-14 14:06:39
    stdlib 头文件即standard library(标准库)头文件,里面包含了C、C++语言的最常用的系统函数。包括动态内存管理、随机数生成、与环境之间的通信、整数运算、搜索、排序及转换等。 stdlib .h 头文件定义了四个变量...

    stdlib 头文件即standard library(标准库)头文件,里面包含了C、C++语言的最常用的系统函数。包括动态内存管理、随机数生成、与环境之间的通信、整数运算、搜索、排序及转换等。
    stdlib .h 头文件定义了四个变量类型、五个宏和各种通用工具函数。

    4个变量:

    size_t
    wchar_t(一个宽字符常量大小的整数类型)
    div_t(div函数返回的结构)
    ldiv_t(ldiv 函数返回的结构)。
    

    5个宏:

    NULL;
    EXIT_FAILURE;   exit 函数失败时要返回的值
    EXIT_SUCCESS;   exit 函数成功时要返回的值
    RAND_MAX;       rand 函数返回的最大值;
    MB_CUR_MAX  在多字节字符集中的最大字符数
    

    一些主要的函数

    •atof函数

    函数原型:double atof (const char* str);
    函数描述:把参数 str 所指向的字符串转换为一个浮点数。
    函数返回:函数返回转换后的双精度浮点数,如果没有执行有效的转换,则返回零(0.0)。
    特点:
    1:函数会不理会字符串开始之后的空格,直到遇到第一个有效字符,从第一个有效字符开始,到最后一个有效字符为止,函数会将这段字符转换为浮点数。最后一个有效字符之后的字符不会影响该函数。
    2:对于C90,有效字符包括以下条件:可以以+-字符作为字符串的开始;字符串中可以出现(不超过)一个.符;可以出现表示指数形式的E或e字符,且其后可以跟一个有效字符串。
    3:对于C99/C11,除C90的条件外,还支持0x/0X前缀,INF,NAN等。

    •atoi函数

    函数原型:int atoi(const char *str);
    函数描述:把参数 str 所指向的字符串转换为一个整数。
    函数返回:返回转换后的长整数,如果没有执行有效的转换,则返回零。
    特点:
    1:函数会忽略字符串刚开始的空格,直到遇到第一个有效字符。
    2:+和-位于第一个字符是被认为是有效字符。最后一个有效字符之后的字符不会影响该函数。
    3:若转换后的数据长度超出int所表示的最大范围,将产生未定义的行为。

    •atol函数

    函数原型:long int atol(const char *str);
    函数描述:把参数 str 所指向的字符串转换为一个长整数(类型为 long int 型)。
    函数返回:返回转换后的长整数,如果没有执行有效的转换,则返回零。
    特点:与atoi一致。

    •strtod函数

    函数原型:double strtod(const char *str, char **endptr);
    函数描述:把参数 str 所指向的字符串转换为一个浮点数(类型为 double 型)。
    函数返回:返回转换后的双精度浮点数,如果没有执行有效的转换,则返回零(0.0)。
    特点:
    1:函数会忽略字符串刚开始的空格,直到遇到第一个有效字符。
    2:如果 endptr 不为空,则它指向转换中最后一个有效字符后的字符所在的地址。
    3:实际使用中常将endptr设为null,表示不关注无效字符。

    •strtol函数

    函数原型:long int strtol(const char *str, char **endptr, int base);
    函数描述:把参数 str 所指向的字符串根据给定的 base 转换为一个长整数,base 必须介于 2 和 36(包含)之间,或者是特殊值 0。
    函数返回:函数返回转换后的长整数,如果没有执行有效的转换,则返回一个零值。
    特点:
    1.对于base,若base为0,则要求:首字母可以是(+/-),若首字母不是0或0x/0X,则必须是十进制的其他字符,且按照10进制进行转换;若首字母是0或0x/0X,则分别按照8进制或16进制转换,开始的0及x/X会被忽略,在此过程中,超出8进制和16进制的字符会被认为是无效字符(如0912会被转化为0,因为会按照8进制来转换,9被认为是无效字符)。
    2:若为36进制,则为从0~z/Z。
    3:其余特点参考strtod。

    •strtoul函数

    函数原型:unsigned long int strtoul(const char *str, char **endptr, int base);
    函数描述:把参数 str 所指向的字符串根据给定的 base 转换为一个无符号长整数,base 必须介于 2 和 36(包含)之间,或者是特殊值 0。
    函数返回:返回转换后的长整数,如果没有执行有效的转换,则返回一个零值。
    特点:参考strtol

    •calloc函数

    函数原型:void *calloc(size_t nitems, size_t size);
    函数描述:分配所需的内存空间,并返回一个指向它的指针。nitems表示要被分配的元素个数。size表示每个元素的大小。
    函数返回:返回一个指针,指向已分配的内存。如果请求失败,则返回 NULL。
    特点:
    1:malloc 和 calloc 之间的不同点是,malloc 不会设置内存为零,而 calloc 会设置分配的内存为零。

    •free函数

    函数原型:void free(void *ptr);
    函数描述:释放之前调用 calloc、malloc 或 realloc 所分配的内存空间。
    函数返回:不返回任何值。
    特点:
    1:如果传递的参数是一个空指针,则不会执行任何动作。
    2:如果指针指向的内存不是由calloc、malloc 或 realloc 所分配,则函数会发生未定义的结果。
    3:函数不会改变指针的值(指向),只是现在指向的内存区域无效。(Notice that this function does not change the value of ptr itself, hence it still points to the same (now invalid) location.)

    •malloc函数

    函数原型:void *malloc(size_t size);
    函数描述:分配所需的内存空间,并返回一个指向它的指针。size表示要申请的字节数。
    函数返回:返回一个指针 ,指向已分配大小的内存。如果请求失败,则返回NULL。

    •realloc函数

    函数原型:void *realloc(void *ptr, size_t size) ;
    函数描述:尝试重新调整之前调用 malloc 或 calloc 所分配的 ptr 所指向的内存块的大小。
    函数返回:返回一个指针 ,指向已分配大小的内存。如果请求失败,则返回NULL。
    特点:
    1:ptr指针指向一个要重新分配内存的内存块,该内存块之前是通过调用 malloc、calloc 或 realloc 进行分配内存的。如果为空指针,则会分配一个新的内存块,且函数返回一个指向它的指针(类似malloc)。
    2:新的内存块的大小,以字节为单位。如果大小为 0,且 ptr 指向一个已存在的内存块,则 ptr 所指向的内存块会被释放,并返回一个空指针。
    3:如果请求失败,则返回NULL,此时不影响ptr所指向的内存。

    •abort函数

    函数原型:void abort(void);
    函数描述:异常中止程序执行,直接从调用的地方跳出。
    函数返回:无返回。
    特点:
    1:abort函数导致所有的流被关闭和冲洗。
    2:abort函数用以解除进程对SIGABRT信号的阻止。

    •atexit函数

    函数原型:int atexit(void (*func)(void)) ;
    函数描述:当程序正常终止时,调用指定的函数func。
    函数返回:如果函数成功注册,则该函数返回零,否则返回一个非零值。
    特点:
    1:可以在任何地方注册你的终止函数,但它会在程序终止的时候被调用。
    2:若一个程序中出现多次atexit函数,则其按照栈的方式执行(最后一个先执行,以此类推)。

    •exit函数

    函数原型:void exit(int status);
    函数描述:(正常)立即终止调用进程。status – 返回给父进程的状态值。
    对于status,如果其为0或者EXIT_SUCCESS,表示成功;如果其为EXIT_FAILURE,表示失败。
    函数返回:无返回。
    特点:
    1:任何属于该进程的打开的文件描述符都会被关闭,该进程的子进程由进程 1 继承,初始化,且会向父进程发送一个 SIGCHLD 信号。

    •getenv函数

    函数原型:char *getenv(const char *name);
    函数描述:搜索name所指向的环境字符串,并返回相关的值给字符串。
    函数返回:返回一个以 null 结尾的字符串,该字符串为被请求环境变量的值。如果该环境变量不存在,则返回 NULL。

    •system函数

    函数原型:int system(const char *command);
    函数描述:把 command 指定的命令名称或程序名称传给要被命令处理器执行的主机环境,并在命令完成后返回。
    函数返回:如果发生错误,则返回值为-1,否则返回命令的状态。
    特点:
    1:如果command为null,则只是为了测试指令系统是否有效,若有效,返回非0,否则返回0。

    •bsearch函数

    函数原型:void bsearch(const void *key, const void *base, size_t nitems, size_t size, int (*compar)(const void , const void *));
    函数描述:对 nitems 对象的数组执行二分查找,base 指向进行查找的数组,key 指向要查找的元素,size 指定数组中每个元素的大小。数组的内容应根据 compar 所对应的比较函数升序排序。
    函数返回:如果查找成功,该函数返回一个指向数组中匹配元素的指针,否则返回空指针。
    特点:
    1:对于compar函数,若返回值小于0,表示要查找的值小于当前值;若返回值等于0,表示要查找的值等于当前值;若返回值大于0,表示要查找的值大于当前值。
    2:若数组中有多个满足条件的值,则函数可能返回任意一个,不一定是第一个。
    3:复杂度log2(num)+2。

    •qsort函数

    函数原型:void qsort(void base, size_t nitems, size_t size, int (*compar)(const void , const void*));
    函数描述:对数组进行排序。base指向要排序的数组的第一个元素的指针。nitems 由 base 指向的数组中元素的个数。size数组中每个元素的大小,以字节为单位。compar 用来比较两个元素的函数。
    返回值:无返回值。
    特点:
    1:不稳定排序(其实是基于快速排序的操作)。
    2:复杂度num*log2(num)。

    •abs函数与labs函数

    函数原型:int abs(int x);long int abs(long int x);
    函数描述:取x得绝对值。
    函数返回:返回x的绝对值。
    特点:
    1:对于浮点型及负数的取绝对值,分别定义在头文件cmath.h及头问价complex.h中。

    •div函数与ldiv函数

    函数原型:div_t div(int numer, int denom); div_t div(long int numer, long int denom);
    函数描述:把 numer(分子)除以 denom(分母)。
    函数返回:返回定义在

    rand函数

    函数原型:int rand(void) ;
    函数描述:伪随机数生成函数。
    函数返回:返回一个范围在 0 到 RAND_MAX 之间的伪随机数。
    特点:
    1:RAND_MAX 是一个常量,它的默认值在不同的实现中会有所不同,但是值至少是 32767。
    2:若随机数生成种子相同,则每次调用rand()生成的伪随机数是相同的。
    3:若使用rand函数前没有调用srand函数,系统会自动调用srand函数。

    •srand函数

    函数原型:void srand(unsigned int seed);
    函数描述:播种由函数rand使用的随机数发生器。seed是一个整型值,用于伪随机数生成算法播种。
    函数返回:无返回。
    特点:
    1:不同的seed会使得此后调用rand函数生成不同的伪随机数。
    2:如果seed设置为1,rand函数将生成和之前一样的伪随机序列。
    3:为了保持seed的独特性,通常的做法是使用time函数返回作为seed值。如srand(time(&t));

    此外,stdlib头文件还有一些处理多字节的函数,在使用过程中可自行查阅。

    参考:

    1. http://www.runoob.com/cprogramming/c-standard-library-stdlib-h.html
    2. http://www.cplusplus.com/reference/cstdlib/
    展开全文
  • stdlib.h

    包含函数:
    1函数名称: calloc
    函数原型: void * calloc(unsigned n,unsign size);
    函数功能: 分配n个数据项的内存连续空间,每个数据项的大小为size
    函数返回: 分配内存单元的起始地址,如果不成功,返回0

    2函数名称: free
    函数原型: void free(void* p);
    函数功能: 释放p所指的内存区
    函数返回:
    参数说明: p-被释放的指针

    3函数名称: malloc
    函数原型: void * malloc(unsigned size);
    函数功能: 分配size字节的存储区
    函数返回: 所分配的内存区地址,如果内存不够,返回0

    4函数名称: realloc
    函数原型: void * realloc(void * p,unsigned size);
    函数功能: 将p所指出的已分配内存区的大小改为size,size可以比原来分配的空间大或小
    函数返回: 返回指向该内存区的指针.NULL-分配失败

    5函数名称: rand
    函数原型: int rand(void);
    函数功能: 产生0到32767间的随机整数(0到0x7fff之间)
    函数返回: 随机整数

    6函数名称: abort
    函数原型: void abort(void)
    函数功能: 异常终止一个进程.

    7函数名称: exit
    函数原型: void exit(int state)
    函数功能: 程序中止执行,返回调用过程
    函数返回:
    参数说明: state:0-正常中止,非0-非正常中止

    8函数名称: getenv
    函数原型: char* getenv(const char *name)
    函数功能: 返回一个指向环境变量的指针
    函数返回: 环境变量的定义
    参数说明: name-环境字符串

    9函数名称: putenv
    函数原型: int putenv(const char *name)
    函数功能: 将字符串name增加到DOS环境变量中
    函数返回: 0:操作成功,-1:操作失败
    参数说明: name-环境字符串

    10函数名称: labs
    函数原型: long labs(long num)
    函数功能: 求长整型参数的绝对值
    函数返回: 绝对值

    11函数名称: atof
    函数原型: double atof(char *str)
    函数功能: 将字符串转换成一个双精度数值
    函数返回: 转换后的数值
    参数说明: str-待转换浮点型数的字符串

    12函数名称: atoi
    函数原型: int atoi(char *str)
    函数功能: 将字符串转换成一个整数值
    函数返回: 转换后的数值
    参数说明: str-待转换为整型数的字符串

    13函数名称: atol
    函数原型: long atol(char *str)
    函数功能: 将字符串转换成一个长整数
    函数返回: 转换后的数值
    参数说明: str-待转换为长整型的字符串

    14函数名称: ecvt
    函数原型: char *ecvt(double value,int ndigit,int *dec,int *sign)
    函数功能: 将浮点数转换为字符串
    函数返回: 转换后的字符串指针
    参数说明: value-待转换底浮点数,ndigit-转换后的字符串长度

    15函数名称: fcvt
    函数原型: char *fcvt(double value,int ndigit,int *dec,int *sign)
    函数功能: 将浮点数变成一个字符串
    函数返回: 转换后字符串指针
    参数说明: value-待转换底浮点数,ndigit-转换后底字符串长度


    展开全文
  • c++中cstdlib头文件

    千次阅读 2016-06-05 09:15:22
    简单的说就是:C语言头文件 stdlib.h 在C++下的头文件是cstdlib Defines the macros traditionally defined in ...c++ 定义这个宏就相当于在C程序定义标准C库的头文件stdlib.h>. 宏定义: #if #include name
    简单的说就是:C语言头文件
    stdlib.h
    
    在C++下的头文件是cstdlib
    <cstdlib>   
    Defines the macros traditionally defined in the Standard C library header <stdlib.h>. 
    c++ 中定义这个宏就相当于在C程序中定义标准C库的头文件<stdlib.h>.
    
    宏定义:
    #if <TRADITIONAL C HEADERS>
       #include <stdlib.h>
    namespace std {
       using ::abort; 
       using ::abs; 
       using ::atexit;
       using ::atof; 
       using ::atoi; 
       using ::atol;
       using ::bsearch; 
       using ::calloc; 
       using ::div;
       using ::div_t; 
       using ::exit; 
       using ::free; 
       using ::getenv;
       using ::labs; 
       using ::ldiv; 
       using ::ldiv_t;
       using ::malloc;
       using ::mblen; 
       using ::mbstowcs; 
       using ::mbtowc;
       using ::qsort; 
       using ::rand; 
       using ::realloc;
       using ::size_t; 
       using ::srand; 
       using ::strtod; 
       using ::strtol;
       using ::strtoul; 
       using ::system;
       using ::wcstombs; 
       using ::wctomb;
      }
    #endif用到下列东西时要用 #include <cstdlib>字符转换函数:atof,atoi,atol,strtod,strtol,strtoul 
    伪随机数函数:rand,srand
    动态分配内存函数:calloc,free,malloc,realloc
    环境函数:abort,atexit,exit,getenv,system
    查找,分类函数:bsearch,qsort
    整数计算函数:abs,div,labs,ldiv,
    多字节文字(中日韩文)函数:mblen,mbtowc,wctombmbstowcs,wcstombs,
    宏:EXIT_FAILURE,EXIT_SUCCESS,MB_CUR_MAX,NULL,RAND_MAX,
    类型:div_t,ldiv_t,size_t
    展开全文
  • 函数功能: 将字符串name增加到DOS环境变量 函数返回: 0:操作成功,-1:操作失败 参数说明: name-环境字符串 10函数名称: labs 函数原型: long labs(long num) 函数功能: 求长整型参数的绝对值 函数返回: 绝对值 ...
  • C++中,头文件stdlib.h主要包含的函数

    千次阅读 2012-07-07 10:49:34
    函数功能: 将字符串name增加到DOS环境变量 函数返回: 0:操作成功,-1:操作失败 参数说明: name-环境字符串 10函数名称: labs 函数原型: long labs(long num) 函数功能: 求长整型参数的绝对值 函数返回: 绝对值 ...
  • =================================================== atof()将字符串转换成浮点数的函数 原形:double ... 头文件:math.h、stdlib.h atoi()将字符串转换成整型数的函数 原形:int
  • ===================================================atof()将字符串转换成浮点数的函数原形:double atof(const char *s)功能:把s所指向的字符串转换成double类型。...头文件:math.h、stdlib.hatoi()将
  • C语言stdlib.h头文件

    千次阅读 2019-03-07 10:09:28
    stdlib 头文件stdlib 头文件的介绍stdlib.h...stdlib 头文件里包含了C、C++语言的最常用的系统函数, 该文件包含了的C语言标准库函数的定义 stdlib.h里面定义了五种类型、一些宏和通用工具函数 类型: 例如 size_...
  • 函数功能: 将字符串name增加到DOS环境变量  函数返回: 0:操作成功,-1:操作失败  参数说明: name-环境字符串  10函数名称: labs  函数原型: long labs(long num)  函数功能: 求长整型参数的...
  • 1. #include是标准的C++头文件,任何符合标准的C++开发环境都有这个头文件。 当使用时,相当于在c中调用库函数,使用的是全局命名空间,也就是早期的... 是C++里面的一个常用函数库, 等价于Cstdlib.h>  所包
  • C++中头文件的现状

    千次阅读 2015-06-25 10:39:11
    内容来自 effective C++ 第二版 条款...标准C头文件 stdlib.h 等,同样可以使用,只是不需要使用std命名空间。.h的C++库不是官方标准,也不在std空间。 需要注意的是sting.h 和 cstring都是C语言函数功能库,于是C++
  • c++中,malloc函数的头文件是什么 我来答 分享 举报 4个回答 #热议#穷游是不是一件值得骄傲的事情? Bk0X 推荐于2017-11-28·TA获得超过9330个赞 关注 有2个头文件都可以 C头文件, <stdlib.h> 调用...
  • c++中,为什么头文件包含了stdlib.h,但是random函数显示有错。 2012年04月12日 16:07:08oneboyishappy阅读数:10782 #include <iostream> #include <stdlib.h> // Need random(), srandom...
  • C语言中头文件中#include "stdlib.h"的作用 stdlib 头文件即standard library标准库头文件 stdlib 头文件里包含了C、C++语言的最常用的系统函数 该文件包含了的C语言标准库函数的定义  stdlib.h里面定义了五种类型...
  • C++头文件

    2020-07-23 08:12:19
    C++头文件 C++重新定义了对标注头文件的书写方式 c++: c: 但仍然兼容旧式的写法<stdlib.h> <iostream.hpp> 在同一项目最好使用同一种引用规则 以上是对于标准库文件而言,对于自定义的...
  • C++ #include头文件两种方式的区别

    千次阅读 2018-05-29 19:11:37
    :先在系统目录寻找头文件,然后再到当前目录下找,一般用于标准的头文件 stdio.h和 stdlib.h等等" ":先在当前目录寻找头文件,然后再到系统目录找,一般用于include自定义的头文件,让系统优先...
  • 其实在谭浩强的C语言教程出现过...stdlib 头文件里包含了C、C++语言的最常用的系统函数,包括 1函数名称:calloc 函数原型: void calloc(unsigned n,unsigned size); 函数功能: 分配n个数据项的内存连续空间,每个
  • C++中有对应相同作用的“cmath”头文件,当然C++中两个头文件都可以使用,C++向C兼容。  这个头文件经常和标准输入输出头文件(stdio.h)弄混,其实很简单,从文件名就可以很容易辨析,stdlib主要是声明定义了...
  • #include <stdlib.h> // Need random(), srandom() #include <time.h> // Need time() #include <algorithm> // Need sort(), copy() #include <vector> // Need vector using namespace std; void ...
  • 1、cstdlib是C++里面的一个常用头文件, 等价于C的<stdlib.h>。 2、一般一个带“.h” 扩展名的库文件,比如iostream.h。这是延续C语言的,为了兼容C。在新标准的库中都有一个 不带".h"扩展名的相对应,...
  • include &lt;stdio.h&gt; - printf() - fflush() - stdout - ...stdlib.h&gt; -exit()include &lt;unistd.h&gt;-sleep() -read()//串口读取-write() //串口写入-close() //关闭串口
  • linux C/C++常用头文件

    2020-08-03 17:59:47
     C语言中是没有bool类型的(C++中有),若要使用此类型,需要包含头文件stdbool.h。 false true 1.3 stddef.h csize_t// 机器相关的无符号类型,它被设计的足够大以便能表示内存中任意对象的大小。 ptrdiff_t// ...
  • C/C++头文件

    2018-06-28 16:37:15
    1. stdlib.hC语言是有#include &lt;stdlib.h&gt;的。 这是C语言标准的包含库头文件stdlib.h的语句。在代码引用此句后,就可以使用stdlib.h的函数,而不会出现未声明的警告。stdlib.h是C语言库头文件之...
  • C/C++常用头文件及函数汇总

    千次阅读 多人点赞 2017-08-01 09:19:41
    写代码时经常忘记有些用到的函数是要包含哪些头文件,在这里整理一下,方便以后查阅(持续更新…) C 头文件 说明 stdio.h 定义输入/输出函数,如printf,scanf,getchar等 stdlib.h 定义杂项函数...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 579
精华内容 231
热门标签
关键字:

c++中stdlib头文件

c++ 订阅