so when you initialize an array, you can assign multiple values to it in one spot:
int array [] = {1,3,34,5,6}
but what if the array is already initialized and I want to completely replace the values of the elements in that array in one line
so
int array [] = {1,3,34,5,6} array [] = {34,2,4,5,6}
doesn't seem to work...
is there a way to do so?
If your variables are the same type, you can define multiple variables in one declaration statement. For example: int age, reach; In this example, two variables called age and reach would be defined as integers.
Assigning values to an element in an array is similar to assigning values to scalar variables. Simply reference an individual element of an array using the array name and the index inside parentheses, then use the assignment operator (=) followed by a value.
You can do array assignment within structs: struct data { int arr[10]; }; struct data x = {/* blah */}; struct data y; y = x; But you can't do it directly with arrays.
There is a difference between initialization and assignment. What you want to do is not initialization, but assignment. But such assignment to array is not possible in C++.
Here is what you can do:
#include <algorithm> int array [] = {1,3,34,5,6}; int newarr [] = {34,2,4,5,6}; std::copy(newarr, newarr + 5, array);
However, in C++0x, you can do this:
std::vector<int> array = {1,3,34,5,6}; array = {34,2,4,5,6};
Of course, if you choose to use std::vector
instead of raw array.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With