No, because long is also 4 bytes. If you don't want to use malloc (why not?) then you need to read your compiler documentation to find out how to increase the stack size.

malloc'd arrays are just as easy to use as stack arrays. Here's a stack example:
Code:
int arr[32];
arr[1]=27;
and here's a malloc example:
Code:
int *arr=(int*)malloc(32*sizeof(int));
arr[1]=27;
free(arr);
so apart from malloc and free, the usage is exactly the same.