繁体   English   中英

在 C++ 中为大小为 n 的数组的前 m 个元素赋值

[英]Assign value to the first m elements of an array of size n in C++

我已经在全球范围内(外部声明的阵列main()大小的函数) n ,和内部的main()我需要为它分配第一mm < n的值。 我该如何处理?

#include <iostream>
using namespace std;

int array[50];

int main()
{
    array = {1,2,3,4,5};  //can not execute, error
    return 0;
}

我得到的错误:

 assigning to an array from an initializer list

如果您尝试使用一些初始值初始化数组,则必须在初始化时立即执行此操作,而不是在初始化之后。

#include <iostream>
using namespace std;
int main(){
   int array[50] = {1,2,3,4,5};
   return 0;
}

但是,如果你真的需要复制值,最简单的方法是一个一个地复制值。

#include <iostream>
using namespace std;
int array[50];

int main(){
   int temp[5] = {1,2,3,4,5};
   for (int i = 0; i < 5; i++) 
       array[i] = temp[i];
   return 0;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM