请帮我看下这个程序问题出在哪里
如图的程序我输入字符后为啥没反应?#include <stdio.h>
#include <conio.h>
//void sc(char f);
char zf = {'d', 'g', 'w', 's', 'k', 't', 'r', 'b', 'i', 'a'};
int main()
{
char sr;
int i;
for(i = 0; i < 10; i++)
{
printf("%c ", zf);
}
printf("\n");
while(1)
{
sr = getch();
if(sr == 27)
{
break;
}
else
{
extern sc(sr);
}
}
return 0;
}
extern zf;
void sc(char f)
{
int j, i = 0;
for(; i < 10; i++)
{
if(f == zf)
{
j = i;
break;
}
}
if(0 == j)
{
for(i = 1; i < 10; i++)
{
printf("%c ", zf);
}
printf("\n");
}
else if(9 == j)
{
for(i = 0; i < 9; i++)
{
printf("%c ", zf);
}
printf("\n");
}
else
{
for(i = 0; i < j; i++)
{
printf("%c ", zf);
}
for(i = j + 1; i < 10; i++)
{
printf("%c ", zf);
}
printf("\n");
}
}
你这个是extern的理解有问题,extern是用在你编写其他的文件中的定义在本文件中使用声明用的,例如:在a.c中你定义了int a=10;
你需要在main.c中使用就在main.c:extern int a;
想都不要想 发表于 2018-11-26 20:33
你这个是extern的理解有问题,extern是用在你编写其他的文件中的定义在本文件中使用声明用的,例如:在a.c中 ...
那我这个程序应该怎么改啊? 想都不要想 发表于 2018-11-26 20:33
你这个是extern的理解有问题,extern是用在你编写其他的文件中的定义在本文件中使用声明用的,例如:在a.c中 ...
谢谢,改好了
页:
[1]