当前位置:首页 C++ > 正文

C++常用头文件汇总

作者:野牛程序员:2023-06-27 06:53:54 C++阅读 4421

以下是C++中一些常用的头文件:

  1. <iostream>:输入输出流库,包括cincoutcerr等。

  2. <fstream>:文件流库,用于文件的输入输出操作。

  3. <vector>:向量库,提供了向量(动态数组)的功能。

  4. <string>:字符串库,提供了字符串的操作功能。

  5. <algorithm>:算法库,提供了各种常用算法,如排序、查找等。

  6. <cmath>:数学库,提供了常用的数学函数,如三角函数、对数函数等。

  7. <ctime>:时间库,提供了与时间相关的函数,如获取当前时间、延时等。

  8. <cstdlib>:标准库,提供了一些通用的函数,如内存分配、随机数生成等。

  9. <cstring>:C风格字符串库,提供了对C字符串的操作功能。

  10. <cstdio>:C风格输入输出库,提供了C风格的输入输出函数,如printfscanf等。

  11. <iomanip>:输入输出格式控制库,用于设置输入输出的格式。

  12. <stdexcept>:异常库,提供了异常类及异常处理相关的功能。

  13. <typeinfo>:类型信息库,提供了获取类型信息的函数。

  14. <sstream>:字符串流库,用于将字符串作为输入输出流进行处理。

  15. <queue>:队列库,提供了队列数据结构的功能。

  16. <stack>:栈库,提供了栈数据结构的功能。

  17. <list>:链表库,提供了链表数据结构的功能。

  18. <map>:映射库,提供了映射(字典)数据结构的功能。

  19. <set>:集合库,提供了集合数据结构的功能。

  20. <array>:数组库,提供了数组数据结构的功能。

这只是C++中一些常用的头文件,还有许多其他的头文件可以根据需要使用。

当涉及到C++中常用的头文件和函数时,有许多函数可以列举和讲解。以下是每个库中一些常用函数的简要说明:

  1. <iostream>

  • std::cin:用于从标准输入流(键盘)读取输入。

  • std::cout:用于向标准输出流(屏幕)写入输出。

  • std::endl:用于输出换行并刷新输出流。

  • std::getline():用于从输入流中读取一行字符串。

  1. <fstream>

  • std::ofstream:用于创建输出文件流对象,实现向文件写入数据。

  • std::ifstream:用于创建输入文件流对象,实现从文件读取数据。

  • std::fstream:用于创建文件流对象,可以进行读写操作。

  • open():打开指定文件。

  • is_open():检查文件是否成功打开。

  • close():关闭文件。

  1. <vector>

  • std::vector:用于创建动态数组(向量)对象。

  • push_back():将元素添加到向量的末尾。

  • pop_back():删除向量的最后一个元素。

  • size():返回向量中元素的数量。

  • at():访问向量中指定位置的元素。

  1. <string>

  • std::string:用于创建字符串对象。

  • length()size():返回字符串的长度。

  • append():在字符串末尾添加另一个字符串。

  • find():查找子字符串在字符串中的位置。

  • substr():返回字符串的子字符串。

  1. <algorithm>

  • std::sort():对容器进行排序。

  • std::find():在容器中查找指定元素。

  • std::reverse():反转容器中元素的顺序。

  • std::max()std::min():返回容器中的最大值和最小值。

  1. <cmath>

  • 数学函数,如 sin()cos()sqrt()pow() 等。

  1. <ctime>

  • std::time():获取当前的系统时间。

  • std::clock():返回程序运行时间。

  1. <cstdlib>

  • std::malloc():分配动态内存。

  • std::free():释放动态内存。

  • std::rand():生成伪随机数。

  1. <cstring>

  • C风格字符串函数,如 strcpy()strlen()strcat() 等。

  1. <cstdio>

  • C风格输入输出函数,如 printf()scanf()sprintf() 等。

  1. <iomanip>

  • 格式控制函数,如 std::setw()std::setprecision() 等。

  1. <stdexcept>

  • 异常类,如 std::runtime_errorstd::logic_error 等。

  1. <typeinfo>

  • typeid:返回对象的类型信息。

  1. <sstream>

  • 字符串流类,如 std::stringstreamstd::istringstreamstd::ostringstream

  1. <queue>

  • std::queue:队列容器,支持队列的操作。

  1. <stack>

  • std::stack:栈容器,支持栈的操作。

  1. <list>

  • std::list:链表容器,支持链表的操作。

  1. <map>

  • std::map:映射容器,存储键值对,支持按键进行查找和访问。

  1. <set>

  • std::set:集合容器,存储不重复的元素,支持集合的操作。

  1. <array>

  • std::array:数组容器,支持数组的操作。

这只是每个库中的一些常用函数的简要说明,实际使用中可以参考相应的文档和教程来了解更多细节。


以下是一些使用常用头文件的C++代码示例:

  1. 使用 <iostream> 头文件进行输入输出:

#include <iostream>

int main() {
    int num;
    std::cout << "Enter a number: ";
    std::cin >> num;
    std::cout << "The number you entered is: " << num << std::endl;
    return 0;
}

使用 <fstream> 头文件进行文件读写操作:

#include <fstream>
#include <iostream>

int main() {
    std::ofstream outfile("example.txt"); // 创建输出文件流
    if (outfile.is_open()) {
        outfile << "This is a line of text." << std::endl;
        outfile.close();
        std::cout << "File write successful." << std::endl;
    } else {
        std::cout << "Unable to open file." << std::endl;
    }

    std::ifstream infile("example.txt"); // 创建输入文件流
    if (infile.is_open()) {
        std::string line;
        while (std::getline(infile, line)) {
            std::cout << line << std::endl;
        }
        infile.close();
    } else {
        std::cout << "Unable to open file." << std::endl;
    }
    return 0;
}

使用 <vector> 头文件创建和操作向量:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> numbers;
    numbers.push_back(1);
    numbers.push_back(2);
    numbers.push_back(3);

    std::cout << "Vector size: " << numbers.size() << std::endl;
    std::cout << "Elements: ";
    for (int i = 0; i < numbers.size(); ++i) {
        std::cout << numbers[i] << " ";
    }
    std::cout << std::endl;

    return 0;
}

这些示例代码只是使用了一些常用头文件的基本功能,实际使用中可以根据需要进行扩展和组合。

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击