📜  C++标准库(1)

📅  最后修改于: 2023-12-03 14:39:59.760000             🧑  作者: Mango

C++标准库介绍

C++标准库是C++编程语言所提供的一系列标准化的库函数和类,为C++程序员提供了广泛的程序设计工具和函数。C++标准库被分成两个部分,即标准函数库和面向对象的类库。

标准函数库

标准函数库提供了访问操作系统、字符串处理、数学运算、文件输入输出、时间处理、日期处理以及错误处理等方面的标准函数。以下是几个常用标准函数库的示例:

iostream库

iostream库是C++标准库中最常用的库之一,它提供了输入和输出流,可以实现简单的控制台输入输出。

#include <iostream>
using namespace std;

int main() {
    int a;
    cout << "请输入一个整数:";
    cin >> a;
    cout << "你输入的整数是" << a << endl;
    return 0;
}
math库

math库提供了常用的数学函数,如三角函数、指数函数、对数函数等。

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    double a = 2;
    double b = 3;
    double c = pow(a, b);
    cout << "a 的 b 次方为:" << c << endl;
    return 0;
}
cstdlib库

cstdlib库包含了各种常用的函数,如动态内存分配、随机数生成、字符串转换等。

#include <iostream>
#include <cstdlib>
using namespace std;

int main() {
    char str[] = "123";
    int num = atoi(str);
    cout << "转换后的整数为:" << num << endl;
    return 0;
}
面向对象的类库

面向对象的类库提供了一些方便的类,如数组、字符串、日期、时间、容器、文件等,可以大大简化C++程序员的工作。以下是几个常用的面向对象类库的示例:

string类

string类是C++中用于操作字符串的类,它提供了一系列方便的字符串操作函数,如查找、替换、拼接等。

#include <iostream>
#include <string>
using namespace std;

int main() {
    string str = "hello, world!";
    string sub = str.substr(0, 5);
    cout << "截取后的子串为:" << sub << endl;
    return 0;
}
vector类

vector类是C++中用于操作数组的类,它可以自动调整数组的大小,支持快速的随机访问和插入。

#include <iostream>
#include <vector>
using namespace std;

int main() {
    vector<int> v;

    // 添加元素
    for (int i = 0; i < 5; i++) {
        v.push_back(i);
    }

    // 访问元素
    for (int i = 0; i < v.size(); i++) {
        cout << v[i] << " ";
    }
    cout << endl;

    // 插入元素
    v.insert(v.begin() + 2, 10);

    // 遍历元素
    for (auto it : v) {
        cout << it << " ";
    }
    cout << endl;

    return 0;
}
fstream类

fstream类是C++中读写文件的类,它提供了方便的读写函数,如open、close、read、write等。

#include <iostream>
#include <fstream>
using namespace std;

int main() {
    ofstream fout;
    fout.open("example.txt");

    if (fout.is_open()) {
        fout << "hello, world!" << endl;
        fout << 123 << endl;
        fout.close();
        cout << "文件写入成功。" << endl;
    } else {
        cout << "文件打开失败。" << endl;
    }

    ifstream fin;
    fin.open("example.txt");

    if (fin.is_open()) {
        string str;
        int num;
        fin >> str >> num;
        cout << "读取的字符串为:" << str << endl;
        cout << "读取的数字为:" << num << endl;
        fin.close();
    } else {
        cout << "文件打开失败。" << endl;
    }

    return 0;
}
总结

C++标准库提供了广泛的程序设计工具和函数,涵盖了访问操作系统、字符串处理、数学运算、文件输入输出、时间处理、日期处理以及错误处理等方面的函数和类。能够熟练地使用C++标准库,可以大大提高C++编程的效率和质量。