I have a simple program that just populates an array with numbers and prints each number.

However, valgrind claims there are at least 8000 bytes of memory leaked.

```
int main(int argc, char *argv[])
{
    int numbers[10];
    int i = 0;
    for(i = 0; i < 10; i++)
    {
        numbers[i] = i;
        printf("%d",numbers[i]);
    }
    free(numbers);
    return EXIT_SUCCESS;
}

```

Can anyone explain where the memory leak is?

Is this the right way to free space allocated for an array?