linuxC++一个函数的参数是const char**,我应该怎么构建并传入这个参数
时间: 2023-06-03 22:07:34 浏览: 145
const成员函数-VC++2010学习
针对您的问题,我可以给您一些指导。首先要了解的是,const char** 表示一个指向指针的指针,通常是用来传递一个字符串数组。如果您需要传递一个指向字符串数组的指针,可以采用以下两种方式:
方式一:定义一个字符串数组,然后定义一个指向该数组的指针,最后将该指针作为参数传递:
```c
char *strings[] = { "string1", "string2", "string3" };
const char **ptr = strings;
foo(ptr);
```
方式二:直接定义一个指向指针的指针,并将其指向一个字符串数组的指针的地址。
```c
char *strings[] = { "string1", "string2", "string3" };
char **ptr = strings;
const char ***pptr = &ptr;
foo(pptr);
```
注意,在这两种情况下,函数的参数类型应该声明为 const char **。另外,如果您需要更改字符串数组中的值,就不能使用 const 修饰符。
阅读全文