是否有机制在C中指向指针?

时间:2015-07-24 22:06:57

标签: c function const pointer-to-pointer

我想知道C / C ++允许在函数调用中使用“const int **”吗?

假设我有一个矩阵,可以通过指针指针访问。当我想使用这个矩阵,并禁止修改此矩阵中的任何值时,我可以执行“func(const int ** mat)”吗?我试过这个,但是当我做这样的事情“a = mat [0] [0]”时,会出现错误信息。

我想知道是否允许使用“const int **”或者这样做的正确方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

const修饰符绑定到其左侧的标记。如果它全部放在左侧,则将其移动到右侧一个位置。因此,当您编写const int **时,它意味着int const **:最终指向的整数是常量,但指针可能会被操纵。这可能完全你想要的东西。

因此,如果您收到错误,可能是因为a没有引用int const(或 - const int),而只是int 1}}。