This relates to C. I am having some trouble understanding how I can assign strings to char pointers within arrays from a function.
#include <stdio.h>
#include <string.h>
void function(char* array[]);
int main(void)
{
    char* array[50];
    function(array);
    printf("array string 0: %s\n",array[0]);
    printf("array string 1: %s\n",array[1]);
}
void function(char* array[])
{
    char temp[] = "hello";
    array[0] = temp;
    array[1] = temp;
    return;
}
Ideally, I would like the main printf function to return
array string 0: hello
array string 1: hello
But I'm having trouble understanding arrays of pointers, how these pass to functions and how to manipulate them in the function. If I declare a string like char temp[] = "string" then how do I assign this to one of the main function array[i] pointers? (assuming I have my jargon right)
 
     
     
     
    