【发布时间】:2017-01-03 18:20:48
【问题描述】:
如果您有一个采用以下功能的函数:
void foo(char **arr);
您如何执行以下操作:
void foo(char* x[] = { "hello", "my", "friend" });
如果这让您感到困惑,那么在 Java 中,我们通过以下方式做到这一点:
public void foo(String[] x);
foo(new String[] { "hello", "my", "friend" });
目前,我在 C 中做以下我讨厌的事情,因为它看起来真的很丑:
char* myArr[] =
{
"hello", "my", "friend"
};
foo(myArr);
【问题讨论】:
-
我建议您在一个新问题中提出第二个完全不相关的问题。提示:先做一些研究...... :)
-
简答:C 不是 Java。有些事情在 C 中无法像在 Java 中那样完成。这是其中之一。你会发现 C 程序员会感激你的 Java 方式无法做到这一点。
标签: c arrays function pointers compound-literals