从不兼容的指针类型传递`foo'的arg 1

时间:2015-04-02 20:39:17

标签: c pointers

警告:传递`printTokens'的arg 1来自不兼容的指针类型

void printTokens(const char** tokens);
char** readTokens(FILE* stream);

int main(int argc, char *argv[])
{
    FILE* fp = fopen(argv[1], "r");

    char** tok = readTokens(fp);
    printTokens(tok);

    getchar();
    return 0;
}

出了什么问题?参数tokchar**printTokens收到char**

2 个答案:

答案 0 :(得分:2)

由于const char**

char**const不一样,但您可以使用类型转换。

所以改变

     printTokens(tok);

     printTokens((const char**)tok);

答案 1 :(得分:1)

您可以修改传递给printTokens()的内容,例如:

printTokens(const char **)tok);