I am trying to write a shell program in C. The following function is supposed to get user line input. I keep receiving an "invalid conversion from void*
to char**
error on the line where I attempt to malloc.
I do not understand why. Can anyone explain?
char *get_line_input(void)
{
int scan;
int buff_size = 1024;
int argument_tracker = 0;
char *line = malloc(sizeof(char) * buff_size);
while (1) {
scan = getchar();
if (scan == '\n') {
line[argument_tracker] = '\0';
return line;
} else {
line[argument_tracker] = scan;
}
argument_tracker++;
}
}