返回指向c中指针的指针

时间:2014-03-31 19:29:01

标签: c pointers

我正在尝试返回指向函数指针的指针。

我有以下功能

char **foo() {
 const char **bar;
 ...
 return bar;
}

我收到以下警告:

warning: return from incompatible pointer type [enabled by default]

我错过了什么?

3 个答案:

答案 0 :(得分:2)

你不能像那样抛弃const限定符。它指向const chars的指针。但是你可以:

 const char **foo() {
   const char **bar;
   ...
   return bar;
  }

答案 1 :(得分:2)

bar被声明为const char **,但您将返回char **

答案 2 :(得分:1)

这是因为函数foo返回char **,而bar的类型为const char **