g_hinstance 头文件;for(i=0;i<5000;i )

请找出 if(strcmp(ch,each[i].kind)==0)的错误 如何改正 拜托了_百度知道
请找出 if(strcmp(ch,each[i].kind)==0)的错误 如何改正 拜托了
#include &iostream&#include &fstream&struct Letter{ char kind[26];}each[26]={'a',0,'b',0,'c',0,'d',0,'e',0,'f',0,'g',0,'h',0,'i',0,'j',0,'k',0,'l',0,'m',0,'n',0,'o',0,'p',0,'q',0,'r',0,'s',0,'t',0,'u',0,'v',0,'w',0,'x',0,'y',0,'z',0};void main(){ int i,j; ifstream in(&E://1.txt&); ofstream out(&E://2.txt&);
cout&&&can't find file&&& } int a[26]={0}; while(in.get(ch)) {
for(i=0;i&26;i++)
if(strcmp(ch,each[i].kind)==0)
each[i].count++; } for(j=0;j&26;j++) {
out&&each[j].kind&&&count
is&&&each[i].count&& } in.close(); out.close(); }
提问者采纳
加#include&string.h&strcmp函数需要引入文件
只要是那一行
一个是字符
一个是地址 比较是错误的
我就想知道如何让字符相比呢
字符的比较直接使用&、&、==比较。你后面那个each里面全部使用的是字符,而你的结构体中的kind是字符数组类型,两者类型不一样。你可以修改成这样:#include&&iostream&#include&&fstream&using&namespace&struct&Letter{&char&&&&&//修改一下&int&}each[26]={'a',0,'b',0,'c',0,'d',0,'e',0,'f',0,'g',0,'h',0,'i',0,'j',0,'k',0,'l',0,'m',0,'n',0,'o',0,'p',0,'q',0,'r',0,'s',0,'t',0,'u',0,'v',0,'w',0,'x',0,'y',0,'z',0};main(){&int&i,j;&ifstream&in(&E://1.txt&);&ofstream&out(&E://2.txt&);&&if(!in)&{&&cout&&&can't&find&file&&&&}&char&&int&a[26]={0};&while(in.get(ch))&{&&for(i=0;i&26;i++)&&if(ch==each[i].kind)&&&&//修改一下&&&each[i].count++;&}&for(j=0;j&26;j++)&{&&out&&each[j].kind&&&count&&&is&&&each[i].count&&&}&in.close();&out.close();&}
is0.....很近了
就是计数仍为0
out&&each[j].kind&&&count
is&&&each[i].count&&改为out&&each[j].kind&&&count
is&&&each[j].count&&你把j写成i了。
看好久都没发现
方便留个联系方式吗 日后有问题还想向您请教
提问者评价
来自团队:
其他类似问题
为您推荐:
其他3条回答
strcmp(ch,each[i].kind)==0二问题:strcmp字符串比较函数ch字符所调用非each[i].kind初始化结尾没'\0'所字符串用问题根据整代码猜测struct应定义:struct Letter{}each[26]={'a',0,'b',0,'c',0,'d',0,'e',0,'f',0,'g',0,'h',0,'i',0,'j',0,'k',0,'l',0,'m',0,'n',0,'o',0,'p',0,'q',0,'r',0,'s',0,'t',0,'u',0,'v',0,'w',0,'x',0,'y',0,'z',0};if(strcmp(ch,each[i].kind)==0)应写if(ch==each[i].ikind)才……
运行结果count 全是0
再帮帮忙 谢谢
C/C++的字符串用字符数组实现,但并非字符数组就是字符串,只有在字符数组中存储字符时在最后一个字符后面紧跟一个'\0',这个字符数组中的字符序列才能作为字符串使用,否则代码不知道字符数组中的字符个数是多少!
请问加在哪里
把什么加在哪里?不已经给你改了吗?原来的代码不光是字符串问题,逻辑也不对——我看好像是从文件读出字符来看看文件中有多少个同样的字符,按我改的就能达到目的,干嘛要把kind弄成字符串?字符就可以了啊!
if(strcmp(&&ch,each[i].kind&)==0)这样修改就可以了!strcmp 第一个参数是 &const char* !
咱想到一起了 地址相比 不过 输出的 全是0结果错误
误人子弟了,刚刚没有仔细看!你是比较字符,直接逻辑符号(== /!=)就OK了,不需要用strcmp,这个是比较字符串的API。
strcmp()函数是个系统函数,你这里要使用,必须在头部先申明,加上#include&sting.h&...
strcmp的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 hinstance 头文件 的文章

 

随机推荐