我用VC6.0和VC.NET运行同样一段程序但结果不一样,怎么回事啊? 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 VC 6.0默认编码是MBCS,而 VC.net是Unicode的 是一段比较复杂的代码啊应该是这一段有问题吧void AddSide(long *NT,long *BR,long *J1,long *J2,long NN,long NJ,long KF){ int i = 0,j = 0,k = 0; long flag1 = 0,JA = 0,JB = 0,JMAX = 0,JMIN = 0,L = 0,N = 0,NM = 0,*JC; JC = new long[NJ+1]; NM = NN-NJ+1; for(i = 1;i<=NJ;i++)JC[i] = 0; L = 0;N = 0; for(i = NN;i>=KF+1;i--) { k = BR[i]; NT[k] = 0; JA = J1[k]; JB = J2[k]; if(JC[JA] == JC[JB]) { if(JC[JA] == 0) { L++; JC[JA] = L; JC[JB] = L; } else { NT[k] = 1; N++; } continue; } if(JC[JA]>JC[JB]) { if(JC[JB] == 0) { JC[JB] = JC[JA]; continue; } else flag1 = 1; } if(JC[JA]<JC[JB]) { if(JC[JA] == 0) { JC[JA] = JC[JB]; continue; } else flag1 = 1; } if(flag1) { if(JC[JA]>JC[JB]) { JMAX = JC[JA]; JMIN = JC[JB]; } else { JMAX = JC[JB]; JMIN = JC[JA]; } for(j = 1;j<=NJ;j++) if(JC[j] == JMAX) JC[j] = JMIN; flag1 = 0; } } if(N+KF != NM) { cout<<"N="<<N<<" KF="<<KF<<endl; exit(0);//退出程序 } delete []JC;} 最后算出来的N值不一样,如:6。0是13而。NET是36 编程清除IE6IE7的Cookie的问题 200分求解 MFC中光标资源如何突破32×32 简单的sqllite问题 请问如何判断一段内存中的内容是否是bmp,gif,jpg文件? 如何获取程序的当前路径 CString存储位数不够怎么办?在线等 函数中的静态变量到底保存在什么地方? 交点算法问题,各位大侠帮帮我 在asynchronize winsock中的notification 通知里面,能否 new 新的内存 谁知道MIB 在学习串口编程中,又碰到一下问题请教大家? 查看pe文件的字符串表的中文字符内容,发现是用另外的保存形式,请问如何把它转换回原来中文字符.
应该是这一段有问题吧
void AddSide(long *NT,long *BR,long *J1,long *J2,long NN,long NJ,long KF)
{
int i = 0,j = 0,k = 0;
long flag1 = 0,JA = 0,JB = 0,JMAX = 0,JMIN = 0,L = 0,N = 0,NM = 0,*JC;
JC = new long[NJ+1];
NM = NN-NJ+1;
for(i = 1;i<=NJ;i++)JC[i] = 0;
L = 0;N = 0;
for(i = NN;i>=KF+1;i--)
{
k = BR[i];
NT[k] = 0;
JA = J1[k];
JB = J2[k];
if(JC[JA] == JC[JB])
{
if(JC[JA] == 0)
{
L++;
JC[JA] = L;
JC[JB] = L;
}
else
{
NT[k] = 1;
N++;
}
continue;
}
if(JC[JA]>JC[JB])
{
if(JC[JB] == 0)
{
JC[JB] = JC[JA];
continue;
}
else flag1 = 1;
}
if(JC[JA]<JC[JB])
{
if(JC[JA] == 0)
{
JC[JA] = JC[JB];
continue;
}
else flag1 = 1;
}
if(flag1)
{
if(JC[JA]>JC[JB])
{
JMAX = JC[JA];
JMIN = JC[JB];
}
else
{
JMAX = JC[JB];
JMIN = JC[JA];
}
for(j = 1;j<=NJ;j++)
if(JC[j] == JMAX)
JC[j] = JMIN;
flag1 = 0;
}
}
if(N+KF != NM)
{
cout<<"N="<<N<<" KF="<<KF<<endl;
exit(0);//退出程序
}
delete []JC;
}