wchar_t* headerslist[] = { L"Accept",L"Accept-Encoding", nullptr }; wchar_t** namelist = headerslist; 如何新增值
时间: 2024-05-07 20:21:23 浏览: 87
深入理解c++中char*与wchar_t*与string以及wstring之间的相互转换
你可以使用指针数组来新增值。这里有一个示例:
```c++
const int MAX_HEADERS = 10;
wchar_t* headerslist[MAX_HEADERS] = { L"Accept", L"Accept-Encoding", nullptr }; // 初始化headerslist数组
int num_headers = 2; // 当前headerslist数组中元素的数量
// 新增一个元素
if (num_headers < MAX_HEADERS - 1) {
headerslist[num_headers] = L"Content-Type";
num_headers++;
}
// 将指针数组转换为指向指针数组的指针
wchar_t** namelist = headerslist;
// 输出所有的元素
for (int i = 0; i < num_headers; i++) {
std::wcout << namelist[i] << std::endl;
}
```
在这个示例中,我们首先定义了一个指针数组`headerslist`,它包含了两个字符串和一个`nullptr`。我们还定义了一个`MAX_HEADERS`常量,表示`headerslist`数组的最大大小。接着,我们定义了一个变量`num_headers`,它表示当前`headerslist`数组中元素的数量。在示例中,`num_headers`的初始值为2,因为`headerslist`数组中有两个元素。
接下来,我们想在`headerslist`数组中新增一个元素。我们首先检查`headerslist`数组是否已满,如果没有,则将新元素添加到`headerslist`数组的末尾,并将`num_headers`加1。
最后,我们将指针数组`headerslist`转换为指向指针数组的指针`namelist`。这允许我们像使用指针数组一样使用指向指针数组的指针。
最后,我们输出所有的元素。请注意,我们只输出`namelist`数组中的前`num_headers`个元素。
阅读全文