c++数组能开多大
### 前言在做题时,有时候不知道数组能不能开那么大。那数组的大小如何计算呢?下面来给大家介绍一下c++数组能开多大。
前言
在做题时,有时候不知道数组能不能开那么大。那数组的大小如何计算呢?下面来给大家介绍一下c++数组能开多大。
讲解
一般情况下, char \text{char} char占1个字节, int \text{int} int占4个字节, long long \text{long long} long long占8个字节。
用 128 MB 128\text{MB} 128MB来举例。
128 MB = 131072 KB = 134217728 B 128\text{MB}=131072\text{KB}=134217728\text{B} 128MB=131072KB=134217728B
也就是说, 128 MB 128\text{MB} 128MB的内存理论上最多可以开 134217728 B 134217728\text{B} 134217728B的数组。
- 开 char \text{char} char的一维数组可以开 134217728 134217728 134217728的长度
- 开 int \text{int} int的一维数组可以开 33554432 33554432 33554432的长度
- 开 long long \text{long long} long long的一维数组可以开 16777216 16777216 16777216的长度
当然,因为代码的其他地方也需要内存,所以不能开满,还要留一部分。如果 RE \text{RE} RE,则是数组大小不够题目要求的数据量或者数组大小超过内存限制的问题。
更多推荐
所有评论(0)