我没有定义指针,但程序却说给空指针赋值?!!
#include <stdio.h>#include <string.h>
void main()
{
char str0[20],str1[20],str2[20],string;
scanf("%s%s%s",str0,str1,str2);
{
if (strcmp(str0,str1) > 0)
strcpy(string,str0);
else
strcpy(string,str1);
}
if (strcmp(str2,string) > 0)
strcpy(string,str2);
printf("The largest string is:%s\n",string);
}
该程序可以正确输出结果,但是在结果后面会出现一个提示,例如:
我输入:
CHINA
HOLLAND
AMERICA
显示结果:
HOLLAND
Null pointer assignment
去百度查过了,这个提示的意思是:空指针赋值(定义了指针,但没有分配内存空间,指针是无效的)。
我还没有学到指针那一章,实在是看不懂,这程序里究竟那里定义指针了??