stdlib.h和stdio.h有啥区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stdlib.h和stdio.h有啥区别相关的知识,希望对你有一定的参考价值。

一、定位不同。

1、stdlib.h是standard library标准库头文件,定位在通用工具函数。

2、stdio.h是standard input&output标准输入输出头文件,定位在标准的输入输出工具函数。

二、封装函数不同。

1、stdlib.h主要封装了malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等函数。

2、stdio.h主要封装了getchar()、putchar()、scanf()、printf()、gets()、puts()、sprintf()等函数。

三、定义类型不同

1、stdlib.h定义了size_t、wchar_t、div_t、ldiv_t和lldiv_t五种类型。

2、stdio没有定义类型。

扩展资料

stdlib.h包含的函数

输入样式:C语言模式:#include <stdlib.h>

C++样式:#include <cstdlib>

1、函数名称:calloc

函数原型: void calloc(unsigned n,unsigned 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)

函数功能: 异常终止一个进程.

参考资料来源:百度百科- stdlib.h

参考技术A

一、定位不同

1、stdlib.h是standard library标准库头文件,定位在通用工具函数。

2、stdio.h是standard input&output标准输入输出头文件,定位在标准的输入输出工具函数。

二、封装函数不同

1、stdlib.h主要封装了malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等函数。

2、stdio.h主要封装了getchar()、putchar()、scanf()、printf()、gets()、puts()、sprintf()等函数。

三、定义类型不同

1、stdlib.h定义了size_t、wchar_t、div_t、ldiv_t和lldiv_t五种类型。

2、stdio没有定义类型。

扩展资料:

stdlib.h包含的函数

输入样式:C语言模式:#include <stdlib.h>

C++样式:#include <cstdlib>

1、函数名称: exit

函数原型: void exit(int state)

函数功能: 程序中止执行,返回调用过程

函数返回:

参数说明: state:0- 正常中止,非 0- 非正常中止

2、函数名称: getenv

函数原型: char* getenv(const char *name)

函数功能: 返回一个指向环境变量的指针

函数返回:环境变量的定义

参数说明: name- 环境字符串

3、函数名称: putenv

函数原型: int putenv(const char *name)

函数功能: 将字符串name增加到DOS环境变量中

函数返回: 0:操作成功,-1:操作失败

参数说明: name-环境字符串

4、函数名称: labs

函数原型: long labs(long num)

函数功能: 求长整型参数的绝对值

函数返回:绝对值

5、函数名称: atof

函数原型: double atof(char *str)

函数功能: 将字符串转换成一个双精度数值

函数返回: 转换后的数值

参数说明: str- 待转换浮点型数的字符串

6、函数名称:fcvt

函数原型: char *fcvt(double value,int ndigit,int *dec,int *sign)

函数功能: 将浮点数变成一个字符串

函数返回: 转换后字符串指针

参数说明: value- 待转换底浮点数,ndigit- 转换后底字符串长度

参考资料来源:百度百科-stdlib.h

参考资料来源:百度百科-stdio.h

参考技术B

一、定位不同。

1、stdlib.h是standard library标准库头文件,定位在通用工具函数。

2、stdio.h是standard input&output标准输入输出头文件,定位在标准的输入输出工具函数。

二、封装函数不同。

1、stdlib.h主要封装了malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等函数。

2、stdio.h主要封装了getchar()、putchar()、scanf()、printf()、gets()、puts()、sprintf()等函数。

三、定义类型不同

1、stdlib.h定义了size_t、wchar_t、div_t、ldiv_t和lldiv_t五种类型。

2、stdio没有定义类型。

扩展资料:

C/C++中其它常用库函数:

#include<algorithm>//STL通用算法

#include<bitset>//STL位集容器

#include<bits/stdc++.h>//编译器GCC 4.8支持的万能头文件,基本包含所有头文件

#include<cctype>//C字符处理

#include<cerrno>//C的错误报告机制

#include<cmath>//兼容C语言数学库

#include<complex>//复数类

#include<cstdio>//C语言输入输出工具

#include<cstdlib>//C语言通用工具

#include<cstring>//C字符串

参考资料来源:百度百科-stdlib.h

参考技术C

1、stdlib.h和stdio.h标准库头文件不同:

stdlib 头文件即standard library标准库头文件,stdlib 头文件里包含了C、C++语言的最常用的系统函数,该文件包含了的C语言标准库函数的定义。

stdio 就是指 “standard buffered input&output" 标准库头文件,意思就是说带缓冲的标准输入输出。

2、stdlib.h和stdio.h函数功能不同:

stdlib里的是常用系统函数,跟系统调用相关的,比如内存申请malloc和释放free,stdio是标准io函数,比如printf和scanf函数。

3、stdlib.h和stdio.h定义类型不同:

stdlib.h里面定义了五种类型、一些宏和通用工具函数。类型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t。

而stdio.h宏例有EXIT_FAILURE、EXIT_SUCCESS、RAND_MAX和MB_CUR_MAX等等;常用的函数如malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等等。

参考技术D 这本就是两个不相同的头文件,stdio是标准输入输出,包含常见的scanf和printf等,而stdlib包含像system等库函数。

以上是关于stdlib.h和stdio.h有啥区别的主要内容,如果未能解决你的问题,请参考以下文章

C语言stdio.h与stdlib.h的区别

cstdlib 和 stdlib.h 有啥区别?

iostream.h 和stdio.h 有啥区别啊?

函数strlen()和sizeof的区别

C语言程序中的"stdio.h"与<stdio.h>有啥区别?

C语言函数名以及取地址的区别和联系