There are several problems and it starts from main() only.
1)
char *c;
*c = line [0]; Assigning a character value to an address which doesn't point to any memory.
According to your code this line has to be:
char *c;
c = &line [0];
//or char *c = &line[0];
2) ++*c just fetches the value at which the pointer is pointing to (in this case 'a') and increments the value.But what you want is to move the pointer one step forward to point to the next input so just c++ or ++c is sufficient.
3)Your second if statement within the test function does check the second input character and verifies whether it is '=' or '-' and directly returns true.Problem here is that pointer c is still pointing to the second character only and not the third character.
Another major point is when the function test returns,it returns true but not false in any case and as the pointer c in function test and function main are different,after control returns from test function,pointer c is still at the first character.