<cstdlib>
是 C++ 标准库中的一个头文件,提供了各种通用工具函数,包括内存分配、进程控制、环境查询、排序和搜索、数学转换、伪随机数生成等。这些函数最初来自
C 标准库 <stdlib.h>,在 C++ 中进行了标准化和扩展。
语法
在 C++ 程序中,要使用 cstdlib 中的函数,需要先包含这个头文件:
#include<cstdlib>
常用函数
cstdlib 中包含了许多有用的函数,以下是一些常用的函数及其简要说明:
exit(int status): 终止程序执行,并返回一个状态码。
system(const char* command): 执行一个命令行字符串。
malloc(size_t size): 分配指定大小的内存。
free(void* ptr): 释放之前分配的内存。
atoi(const char* str): 将字符串转换为整数。
atof(const char* str): 将字符串转换为浮点数。
rand(): 生成一个随机数。
srand(unsigned int seed): 设置随机数生成器的种子。
实例
以下是一些使用 cstdlib 中函数的实例:
实例 1:使用 exit 函数
#include <iostream> #include <cstdlib> int main(){ std::cout<<"This program will exit now."<< std::endl; exit(0);// 正常退出程序 return0;// 这行代码不会被执行 }
输出结果:
This program will exit now.
实例 2:使用 system 函数
#include <iostream> #include <cstdlib> int main(){ std::cout<<"Executing a system command: dir"<< std::endl; system("dir");// 在 Windows 上显示当前目录的文件和文件夹 return0; }
输出结果:
Executing a system command: dir
然后显示当前目录的文件和文件夹列表。
实例 3:使用 malloc 和 free 函数
#include <iostream> #include <cstdlib> int main(){ int* ptr =(int*)malloc(10*sizeof(int));// 分配内存 if(ptr ==NULL){ std::cout<<"Memory allocation failed."<< std::endl; return1; } for(int i =0; i <10;++i){ ptr[i]= i * i;// 使用分配的内存 }
for(int i =0; i <10;++i){ std::cout<<"Element "<< i <<": "<< ptr[i]<< std::endl; } free(ptr);// 释放内存 return0; }