我想做什么: 制作一个打开文件并阅读内容的程序(主要是字符) 关于它应该做什么的例子:
该文件包含“ABA”,应打印:字母A计数2 ||字母B数1 但是当我开始调试http://imgur.com/a/zvpWg
时,我收到此错误#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <ctype.h>
struct arr
{
char letter;
int count;
};
void main ()
{
arr s[7];
char letter;
FILE *fp;
fp=fopen("D:\\data.txt","r");
if(fp==NULL)
{
printf("Error File Not Found\n");
getch();
exit(1);
}
while(fscanf(fp,"%ch",&letter)!=EOF)
{
for(int i=0;i<7;i++)
{
if(!isalpha(s[i].letter))
{
s[i].letter=letter;
s[i].count=1;
break;
}
else if(s[i].letter == letter)
s[i].count++;
break;
}
}
for(int h=0;h<7;h++)
printf("Letter: %c Count: %d ||",s[h].letter,s[h].count);
getch();
}
我到底错在哪里?
答案 0 :(得分:0)
问题可能是 -
使用整数调用函数 isalpha(),该整数的值不是单个字节,即0-255。