cho e hỏi có ai biết cách khai báo mảng một triệu phần tử không ạ
hỏi về khai báo mảng 1 triệu phần tử
Câu hỏi này @phamduykhanhspkt hỏi cho C# hay C++ nhỉ?
Giả sử giờ mình tạo 1 triệu phẩn từ kiểu int. Với 1 phần tử là 4 bytes, 1000000 phần tử là 4000000 bytes = 4 MB of RAM. Nhiêu đây không ăn thua gì với máy 8GB of RAM của mình
C++ dùng array với khai báo static
. Phải dùng static
mảng của mình không lưu trên stack
. Hình như stack size
trên Windows chỉ có 1-2MB thôi. Không đủ chứa mảng bự quá, máy mình là x64, có thể tạo được tầm int a[521000];
mà không bị crash. Thêm nữa là crash ngay.
#include <iostream>
int main() {
static int a[1000000];
return 0;
}
Hoặc dùng vector
#include <vector>
int main() {
std::vector<int> v(1000000);
return 0;
}
C# thì Đạt không làm nhưng thấy người ta làm thế này
const int length = 1000000;
var items = new Item[length];
3 Likes
thank a nhìu nha
với e đang làm ứng dụng trên winfrom làm cái file txt có 1 triệu phần tử rùi cho nó sắp xếp a ơi
1 Like