I have a simple c project with 5 files.

Data.h

```
#ifndef DATA_INCLUDED
#define DATA_INCLUDED
struct NUMBERS {
    int a;
    int b;
    int c;
    int d;
};
#endif

```

Data.c

```
#include "Data.h"

struct NUMBERS Hello[] = {
    {11, 12, 13, 14},
    {15, 16, 17, 18},
    {19, 20, 21, 22},
    {23, 24, 25, 26}
};

```

Info.h

```
#ifndef INFO_INCLUDED
#define INFO_INCLUDED

extern struct NUMBERS Hello[];
extern int SizeOfHello;

#endif

```

Info.c

```
#include "Data.h"
#include "Info.h"

int SizeOfHello = sizeof Hello/sizeof(struct NUMBERS);

```

Main.c

```
#include <stdio.h>
#include "Info.h"

int main()
{
    printf("%d\r\n", SizeOfHello);
    return 0;
}

```

I get 

> 
> warning C4034: sizeof returns 0
> 
> 
> 

when I run the program and `printf()` outputs 0. What am I doing wrong and how do I fix it?