Python Front-end to GCC

Mark Lawrence breamoreboy at yahoo.co.uk
Tue Oct 22 12:50:29 EDT 2013


On 22/10/2013 17:40, Steven D'Aprano wrote:
> On Tue, 22 Oct 2013 15:39:42 +0000, Grant Edwards wrote:
>
>>> No, I was thinking of an array. Arrays aren't automatically initialised
>>> in C.
>>
>> If they are static or global, then _yes_they_are_.  They are zeroed.
>
> Not that I don't believe you, but do you have a reference for this?
> Because I keep finding references to uninitialised C arrays filled with
> garbage if you don't initialise them.
>
> Wait... hang on a second...
>
> /fires up the ol' trusty gcc
>
>
> [steve at ando c]$ cat array_init.c
> #include<stdio.h>
>
> int main()
> {
>    int i;
>    int arr[10];
>    for (i = 0; i < 10; i++) {
>      printf("arr[%d] = %d\n", i, arr[i]);
>      }
>      printf("\n");
>      return 0;
> }
>
> [steve at ando c]$ gcc array_init.c
> [steve at ando c]$ ./a.out
> arr[0] = -1082002360
> arr[1] = 134513317
> arr[2] = 2527220
> arr[3] = 2519564
> arr[4] = -1082002312
> arr[5] = 134513753
> arr[6] = 1294213
> arr[7] = -1082002164
> arr[8] = -1082002312
> arr[9] = 2527220
>
>
> What am I missing here?
>
>

arr is local to main, not static or global.

-- 
Python is the second best programming language in the world.
But the best has yet to be invented.  Christian Tismer

Mark Lawrence




More information about the Python-list mailing list