Declaring a global CHAR array from shell in C

I have a problem with global variables in C. I have to create an array of strings with C. The number of strings will be determined by the argument passed by the shell (

number_of_string = atoi(argv[1])

). So I think the best way to do this is with an array of

number_of_strings

pointers. Every elemnt of this array will point to a section of memory dinamically reserved with malloc. The main problem is that I need to define the size of the array before the execution of main (argv[1] doesn't exist yet), as a global variable. I don't know how I could solve this. Can anyone help me?