About Arrays !!

Go4Expert Member
12Jul2010,15:19   #1
Dimesh's Avatar
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...............
Go4Expert Founder
12Jul2010,15:29   #2
shabbir's Avatar
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.
Go4Expert Member
12Jul2010,16:02   #3
Dimesh's Avatar
Thanks shabbir, that is helpful ....
Go4Expert Member
12Jul2010,16:04   #4
Dimesh's Avatar
Good explanation more than others ....!
Go4Expert Founder
12Jul2010,20:42   #5
shabbir's Avatar
The pleasure is all mine.
Go4Expert Member
8Sep2010,02:17   #6
LordN3mrod's Avatar
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 likes this