st[(int)string[i]]++; 这C++代码什么意思?

 我来答
94107066
2011-11-30 · TA获得超过167个赞
知道小有建树答主
回答量:605
采纳率:0%
帮助的人:236万
展开全部
st应该是一数组,i是一数字型字符(int)string[i]转化为整形; ,是数组st的第i+1项自加1
追问
是第i+1项还是string[i]项?(int)string[i]就是i+1?下面这是它的主函数代码,其中cha[i]的地方看不懂啊,为什么 cha[i]=i 了已经.但输出的cha[i]是字符?
char cha[max],string[max];
for(i=0;string[i]!='\0';i++) st[(int)string[i]]++;
for(i=0;i<=199;i++)
if (st[i]!=0)
{ cha[j]=i;
weight[j]=st[i];
j++;}
i=1;
for (n=j-2;i<j-1;i++)//j-2去掉额外加的两次
{cout<<cha[i]<<" 的权值为:"<<weight[i]<<endl;}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吴铁骑
2011-12-01 · TA获得超过876个赞
知道小有建树答主
回答量:780
采纳率:60%
帮助的人:159万
展开全部
先将string[i]的值转化为整型,然后这个证整数作为st[ ]的角标,然后再进行++运算,即进行数组st[ ]的++运算,到了st[ ]数组的下一位。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小牧爱跑步xd
2011-11-30 · TA获得超过117个赞
知道答主
回答量:202
采纳率:0%
帮助的人:87.2万
展开全部
能不能看一下关于st的定义?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式