int*num=new int[cols]; for(int i-0;i<Terms;i++){++num[Array[i].col-1} 中“{ }”符号里什么意思

int*num=new int[cols];
for(int i-0;i<Terms;i++)
{++num[Array[i].col-1} //这行“{ }什么意思
(Array是一个三元组数组,Array里面有row col value)
http://pa.poco.cn/?40927409&http://my.poco.cn/album/album_show_details.php?user_id=40927409&item_id=117702341
程序(只不过这个是C版的,我提问是C++版教材的,思路都一样)
最新回答
你我咫尺之隔

2024-10-24 07:10:51

你的代码有错误
int*num=new int[cols]; /*接下来num数组应该初始化,即数组元素应赋初值*/
for(int i=0;i<Terms;i++)
{
++num[Array[i].col-1]; /*少了右中括号和分号*/
}
Array可能是一个结构数组,结构成员为col和row,表示某项目具有的行数和列数;
但该行的意思的确费解,只有系统地分析代码才好弄明白,所以,你最好贴出更多的代码,当然说明代码的算法或代码实现的功能会更好。
追答
int*num=new int[cols];   /*接下来num数组应该初始化,即数组元素应赋初值*/
for(int i=0;i<Terms;i++)
{
++num[Array[i].col-1]; /*Array[]是矩阵中的非零元机构化数据的数组,col是这个非零元数据所在的列数(从1开始,所以需要减1),这样就统计出了M中每一列含非零元素个数,num[]则存放矩阵各列的非零元素个数,这个程序片断应该是稀疏矩阵的计算程序。
*/
}