+ 1
Output of C++ code
Can someone explain this C++ code? https://code.sololearn.com/cdRICRoQ28tU/#cpp
6 Respostas
+ 3
That's a special for loop used for arrays..(edit : vector, map,... A collection of iterable types)
Syntax is
for( type variable : array)
{
...
}
Variable is assigned array value in sequence from index 0 to length-1 in each next iterations.. Like a normal for loop.
But in first loop,
int i = a; is normal assignment a also variable.
But int &i =a ; is assigning address of a in address of i so now I and a will point to same locations so change in one variable will change in other variables also... So in first loop change in i will replect back to array value. So that's why array values also changing..
Edit : Arsenic
I specified relating to code specific only.. (In that code)
Ok. C++ has vectors and map also.. So if it misleading, I edit it.
It works for any collection of elements type.. Ex: array, vector..
Done.. 👍
+ 3
You are using 2 ranged based *for* loops here :-
The first one is traversing the entire array and is reducing the ACTUAL values in it by 1
The second one is just displaying each value of array.
+ 2
Jayakrishna🇮🇳 it's not specific for arrays. It is a ranged based loop which can be used to iterate over any range of values, for example std::vector , std::map or any other C++ Standard Library sequence whose range is defined by a begin() and end()
Edward Finkelstein have a look at this 👇 to learn more about ranged based *for* loops in C++
https://docs.microsoft.com/en-us/cpp/cpp/range-based-for-statement-cpp
+ 1
thank you Arsenic!
0
what do the : and the & symbol do?
0
thank you Jayakrishna!