#include <stdio.h>
int main(void)
{
int i,j,k;
char st;
printf("enter string\n");
scanf("%s", st);
printf("the entered string is %s\n", st);
}
编译上面的程序给了我一个警告:
warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int' [-Wformat]
palindrom.c:8:1: warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int' [-Wformat]
我在这里做错了什么?
这是我运行它时发生的情况:
$ ./a.out
enter string
kiaaa
the entered string is (null)
编辑:
这是代码的另一个版本(制成char st;
)char *st
:
#include <stdio.h>
int main(void)
{
int i,j,k;
char *st;
printf("enter string\n");
scanf("%s", st);
printf("the entered string is %s\n", st);
}
但是,它在运行时的行为相同。