My compiler gave a lot of warnings:
Code:
C:\Users\thismoment\Documents\c programming\test6\main.c||In function 'main':|
C:\Users\thismoment\Documents\c programming\test6\main.c|10|warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]|
C:\Users\thismoment\Documents\c programming\test6\main.c|10|warning: incompatible implicit declaration of built-in function 'printf' [enabled by default]|
C:\Users\thismoment\Documents\c programming\test6\main.c|11|warning: implicit declaration of function 'scanf' [-Wimplicit-function-declaration]|
C:\Users\thismoment\Documents\c programming\test6\main.c|11|warning: incompatible implicit declaration of built-in function 'scanf' [enabled by default]|
C:\Users\thismoment\Documents\c programming\test6\main.c|11|warning: format '%s' expects argument of type 'char *', but argument 2 has type 'char **' [-Wformat]|
C:\Users\thismoment\Documents\c programming\test6\main.c|12|warning: implicit declaration of function 'strcpy' [-Wimplicit-function-declaration]|
C:\Users\thismoment\Documents\c programming\test6\main.c|12|warning: incompatible implicit declaration of built-in function 'strcpy' [enabled by default]|
C:\Users\thismoment\Documents\c programming\test6\main.c|16|warning: incompatible implicit declaration of built-in function 'printf' [enabled by default]|
||=== Build finished: 0 errors, 8 warnings (0 minutes, 0 seconds) ===|
Adding #include <stdio.h> and <string.h> fixed up most of the warnings, leaving only this one:
Code:
C:\Users\thismoment\Documents\c programming\test6\main.c|11|warning: format '%s' expects argument of type 'char *', but argument 2 has type 'char **' [-Wformat]
You have not allocated memory for the pointer *temp. Since temp is a pointer, &temp is a pointer to a pointer of type char( char **). So after you have allocated memory, use scanf("%s", temp). Don't need the & at the front.