void doSomething()
{
int hist[5] = { 0 };
int num_bins = 5;
int indices[10] = { 0, 0, 2, 3, 3, 3, 3, 4, 4, 4 };
int num_indices = 10;
int i;
for (i = 0; i < num_indices; i++)
{
hist[indices[i]]++;
}
for (i = 0; i < num_bins; i++)
{
printf("%d ", hist[i]);
}
printf("\n");
}
假设我有正确的库,这是课堂上的概念性问题。我想知道数组的答案是2 0 1 4 3。
最佳答案
线
hist[indices[i]]++
说“转到索引
hist
处indices[i]
数组的元素,然后将其递增。”如果将数组视为计数器列表,则表示要在位置indices[i]
处递增计数器。此代码构建数组中各种数字的频率的直方图。上面代码背后的思想是遍历数组并增加每个元素的频率。
希望这可以帮助!
关于c - 在此函数中的数组之后,++会做什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19143444/