I am trying to create a C function I can call in small programs I write, to accept user input:
char GetStringMine()
{
    int i = 0;
    char ch;
    char * tmpstring = (char *) malloc(2048 * sizeof(char));
    while(ch != '\n')
    {
        ch = getchar();
        tmpstring[i++] = ch;
    }
    tmpstring[i] = '\0';
    return * tmpstring;
    free(tmpstring);
}
But it does not compile. Please can you tell me what I am doing wrong, and what I can do better?
 
     
     
     
     
    