如何在C++中将动态创建的大整数数组初始化为特定的整数
How to initialize dynamically created large integer array to a specific integer in C++?
我创建了一个数组R,如下所示:int * R = new int[n];
其中n取一个很大的值,比如100000。我想用C++将数组的所有整数初始化为1。做这件事最好/最快的方法是什么?或者,在整个数组中循环是唯一的选择吗?
"最好/最快的方法是什么?"
在C++中,您可以使用std::vector<int> R(n,1);
。
如果您在其他地方需要int*
,请参阅R.data()
。
您可以从STL:中std::fill
std::fill(R, R + n, 1);
但我建议您使用std::vector
:
std::vector<int> R(n, 1);
不要使用memset(R, 1, sizeof(int) * n)
,因为它为数组的每个字节(而不是元素)分配1。
for(int i = 0; i < n; i++){
R[i] = 1;
}
//don't forget to "delete[] R;"!
您可以使用矢量:
std::vector<int> R(n, 1);
但是数组和循环是最好的朋友,以防你不能使用向量。尽管建议使用vector,因为手动解除分配是由类处理的。
相关文章:
- 从二进制文件中读取整数数组
- 新的整数数组向右移动?
- C++ 中的二维整数数组,每行中的元素数量不均匀
- 给定一个整数数组,需要在Max_Heap上运行操作。得到错误"segmentation fault",有什么想法吗?(C++)
- 为什么在我的 main 函数中声明整数后我的整数数组中会出现错误?
- 在 C++ 中将整数数组转换为位集表示形式的最佳方法?
- 从两个 4x64 位整数数组中获取取模
- 字符到整数数组
- 从函数参数 [C++] 复制整数数组
- 指向整数数组和打印总和的指针
- 使用可变参数函数将整数和/或整数数组放入单个 int 数组中
- 线程安全整数数组?
- 整数数组中最长的回文
- 在大整数数组中查找子数组
- 查找整数数组中最接近的数字
- 创建<int>对整数数组指针的矢量引用 (C++)
- 整数指针数组的元素是否可以指向整数数组?
- 如何将整数数组相乘得到一个数字?
- 当 map 是一个整数数组并且由 operator[] 创建时,它是否初始化其映射类型
- 将文本文件读入整数数组