调用c ++函数

时间:2014-12-11 21:12:34

标签: c++

我对c ++很新,我一直在尝试使用librow库(中值过滤器)。我无法理解的是:

typedef int element;

它说它是一个int。但是在这里:

//   2D MEDIAN FILTER, window size 3x3
//     image  - input image
//     result - output image, NULL for inplace processing
//     N      - width of the image
//     M      - height of the image
void medianfilter(element* image, element* result, int N, int M);

它表示将图像作为类型元素*。这怎么可能?非常感谢你的答案中的一个例子。

2 个答案:

答案 0 :(得分:1)

指针可以指向单个元素,也可以指向元素的数组。编译器并不关心这种或那种方式。在这种情况下,您需要传递数组。

将指针传递给数组时,还必须传递给出数组大小的信息。在这种情况下,它将是N * M

答案 1 :(得分:0)

element*表示指向int的指针。 Aka记忆int变量的地址。 在这种情况下,它将是一个int数组的地址(即连续整数列表中的第一个int。) 每个N * M整数将逐行表示图像的像素。