首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于数组的自加疑惑,望高手加以指点。感谢了。解决方案

2012-01-15 
关于数组的自加疑惑,望高手加以指点。感谢了。程序功能:对一个文本文件中所有的汉字进行频率统计代码如下:in

关于数组的自加疑惑,望高手加以指点。感谢了。
程序功能:对一个文本文件中所有的汉字进行频率统计
代码如下:
int   HZfreq[6768];
#define   HZ_ID(c1,c2)   ((c1)-176)*94+((c2)-161)
void   hzInFile(CString   FileName)
{
FILE   *in;
unsigned   char   c1,c2;
int   id;
in=fopen((const   char   *)FileName,   "rb ");
if   (in==NULL)   {AfxMessageBox( "无法打开输入文件! ");   return;}
                  while(!feof(in))   {
c1=(unsigned   char)   fgetc(in);
if(c1 <128)   continue;
if(c1 <176)   {c2=fgetc(in);   continue;}
c2=(unsigned   char)   fgetc(in);
id=HZ_ID(c1,c2);
HZFreq[id]++;
}
fclose(in);
return;
}
问题:请问HZFreq[id]++怎么理解?加了之后它的值是多少?
更有甚者,Freq_table[c1][c2]++;   在这里二维数组也自加。请高手解疑并指教。
万分感谢!

[解决办法]
HZFreq[id]与Freq_table[c1][c2]都是取数据的一个具体的元素,再++是很正常,它们和i++没有区别。

不要与数组指针++想混了!数组指针++是这样的:
HZFreq++或Freq_table[c1]++等形式。

热点排行