中易网

MFC编程,出现debug assertion failed,崩溃的代码就一句,判断两个CString是不是相等,为何崩呢

答案:2  悬赏:40  
解决时间 2021-12-22 04:09
for(int j=0;num2[j];j++)
{
for(int m=num2[j]+1;m<=num2[j+1];m++)
{
for(int p=j+1;num2[p];p++)
{
for(int q=num2[p]+1;q<=num2[p+1];q++)
{
if(b[m]==b[q])//这有错
{
UINT actReceive;
staychar[k]=b[num2[m]];
pFile=fopen(n[num2[m]].GetBuffer(0),"w");
actReceive=fread(qw1,sizeof(char),10000,pFile);
qw1[actReceive]='\0';
pFile=fopen(n[q].GetBuffer(0),"w");
actReceive=fread(qw2,sizeof(char),10000,pFile);
qw2[actReceive]='\0';
same[num2[m]][q][0]=ldistance(qw1,qw2);
same[num2[m]][q][1]=1;
}
}
}
}
}

就b[m]==b[q]那句崩了

char qw1[10000]={0};
char qw2[10000]={0};
CString staychar[100];
int same[100][100][2]={0};
CString b[10000];
int num2[100]={0};
最佳答案
写的太烂。
判断两个CString是否相等不是很简单吗?
CString a, b;
方法1:if(a == b) {}
方法2:
int m = a.GetLength(), n = b.GetLength();
bool equal = true;
if(m == n)
{
for(int i = 0; i < m; i++) if(a[i] != b[i]) { equal = false; break; }
}

你后面的文件写入是什么意思?
建议先把要写入的字符放到数组后统一写入,不要放在for循环里面。
全部回答
也许是的。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
鼓箭的意思是什么?鼓箭的释义是什么啊?
石家庄卖电器的商场都在什么地方
庐宇的意思是什么啊?请解释下!
单帮的意思是什么?单帮的释义是什么啊?
在三角形ABC中,角C=2角B,角BAD=角CAD.求证AB
招商·花园城3号门我想知道这个在什么地方
3mm厚拉丝不锈钢多少钱一平米
祖祢的意思是什么啊?请解释下!
撲撒的意思是什么?撲撒的释义是什么啊?
宗白华的"散步美学"具有哪些独到之处
追跟的意思是什么?追跟的释义是什么啊?
宝泉岭农垦区人民检察院新华检察室地址在哪,
孤鹤的意思是什么啊?请解释下!
请问哪里有养獾的?最好是河北一带
三姦的意思是什么?三姦的释义是什么啊?
推荐资讯
风冷模块机和空气能热水机性能有啥区别
王者荣耀什么皮肤最好 给女朋友适合送哪些皮
立成的意思是什么啊?请解释下!
线符的意思是什么啊?请解释下!
我恢复出厂设置后玩梦幻西游手游要卡屏
推荐个性价比高点的gtx770
青岛李沧区的御景山庄怎么样?
铝合金表面要怎么样的处理才可以耐100度高温
InstallMicrosoft Visual C++ 2008 Redistrib
镇平县工商行政管理局贾宋工商所地址在什么地
张寨村怎么去啊,我要去那办事
自体毛发种植中心
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?