如何将二维chars数组转换为char **?

时间:2012-06-08 17:57:44

标签: arrays char

我有一个类似下面的打印功能:

void print(char **p)
{
    cout<<p[0]<<endl;
}

这是我的主要功能

int _tmain(int argc, _TCHAR* argv[])
{
    char a[50][50];
    strcpy(a[0], "hello");
    print(&a[0]);
}

print func调用将出现编译错误。我的问题是没有修改print func的定义,如何修改print func调用以使其打印出你好?

更新:以下代码可行。

char *temp=a[0];
print(&temp);

1 个答案:

答案 0 :(得分:0)

你不需要转换任何东西。如果使用Array作为参数调用funktion,则它始终是指针。在我看来,你只需要打电话

打印(A [0]);

你做了什么会导致char * 作为参数。