Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tạo mảng động số nguyên trong C++ bằng từ khóa new

Trong C++, mảng động được cấp phát trên heap bằng toán tử new và giải phóng bằng delete.

Cú pháp cơ bản

int *ptr = new int[n]; // cấp phát mảng n phần tử
// sử dụng ptr[i]
delete [] ptr; // giải phóng (cần [] cho mảng)

Ví dụ mã: Nhập/Xuất mảng động

#include <iostream>
using namespace std;

int main() {
    int n;
    cout << "Nhập số phần tử: ";
    cin >> n;

    int *a = new int[n]; // cấp phát động

    cout << "Nhập " << n << " phần tử:\n";
    for (int i = 0; i < n; ++i)
        cin >> a[i];

    cout << "Các phần tử: ";
    for (int i = 0; i < n; ++i)
        cout << a[i] << " ";
    cout << endl;

    delete [] a; // quan trọng: dùng delete[] cho mảng
    return 0;
}

Kết quả mẫu

Nhập số phần tử: 7
Nhập 7 phần tử:
1 2 3 4 5 6 7
Các phần tử: 1 2 3 4 5 6 7

Lưu ý quan trọng: Luôn dùng delete[] cho mảng được cấp phát bằng new[]. Dùng delete đơn lẻ gây rò rỉ bộ nhớ/undefined behavior.