通过引用将字符串数组传递给C函数
我很难通过引用将字符串数组传递给函数。
char* parameters[513];
这代表513个字符串吗?以下是我初始化第一个元素的方法:
parameters[0] = "something";
现在,我需要通过引用将'参数'传递给函数,以便函数可以向其添加更多字符串。函数头如何看起来如何在函数内部使用此变量?
没有找到相关结果
已邀请:
2 个回复
穗揣
在C中,当您将数组传递给函数时,编译器会将数组转换为指针。 (数组“衰减”成指针。)上面的“func”完全相当于:
由于传递了指向数组的指针,因此在修改数组时,您将修改原始数组而不是副本。 您可能想要了解指针和数组如何在C中工作。与大多数语言不同,在C中,指针(引用)和数组在很多方面都被类似地对待。数组有时会衰减为指针,但仅限于非常特定的情况。例如,这不起作用:
雇砰
是一个513指针到
的数组。它相当于
。 指向该东西的指针的类型为
(相当于
),因此您的函数可能如下所示:
或者,如果您想要C ++参考: