About Arrays !!

Dimesh's Avatar, Join Date: Jul 2010
Go4Expert Member
What is the difference Between those types of initializing An array called "IntegerArray" With 5 element :
Code:
     int IntegerArray[5] = {0};
     int IntegerArray[5] = {0,0,0,0,0};
     int IntegerArray[5] = {10,20,30,40,50};
     int IntegerArray[]  = {10,20,30,40,50};
Please i need an obvious explanation for each line as i am confused.....

Thanks for reading...............
0
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Code:
     int IntegerArray[5] = {0};
Declares array of integers with each initialized to 0. Basically short form of second one.
Code:
     int IntegerArray[5] = {0,0,0,0,0};
Declares array of integers with each initialized to 0.
Code:
     int IntegerArray[5] = {10,20,30,40,50};
Declares array of integers with each initialized to respective values.
Code:
     int IntegerArray[]  = {10,20,30,40,50};
Declares array of integers with each initialized to respective values. This is again same as above and one more way to write it.
0
Dimesh's Avatar, Join Date: Jul 2010
Go4Expert Member
Thanks shabbir, that is helpful ....
0
Dimesh's Avatar, Join Date: Jul 2010
Go4Expert Member
Good explanation more than others ....!
0
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
The pleasure is all mine.
0
LordN3mrod's Avatar, Join Date: Sep 2010
Go4Expert Member
By all means the explanation of shabbir was excellent, indeed. Just a little complementation from me:
when you write
int a[n] = {a[1], a[2] ..., a[t]}
then,
if n is greater than t, then the remaining values are set to 0. t is greater than n, this is a compile error.
if you don't specify n, then n = t;
sorry for a bit dry explanation, but I'm sure it won't cause trouble
shabbir like this