函数参数c++中的void**指针
void ** pointer in function argument c++
在这种情况下,如何从void**函数参数输出wchar_t*的变量?
我想通过使用void**在ChangeMe变量中插入t的值,如何实现?
void foo(void **v){ wchar_t *t = L"String is changed!"; *(wchar_t*)v = *t; }
wchar_t *ChangeMe = L"";
已经尝试(不起作用):
foo((void**)ChangeMe );
您可能想要编写
*((wchar_t**)v) = t;
请注意,t
的值在返回后超出了作用域。在这种情况下,这可能会起作用,因为文字的地址具有静态存储持续时间。
此外,当将ChangeMe
传递给您想要实际指定其地址的函数时:
foo((void**)&ChangeMe);
// ^
这是完整的工作样本。
不要为无效指针而烦恼;编写正确的C++代码。
相关文章:
- 引用一个已擦除类型(void*)的指针
- 如何将指针从一个void函数传递到另一个C++
- 指针没有更新它在void函数内部指向的值
- 错误:在为指针赋值时,void值没有被忽略
- 为什么我们要为avl树实现返回一个指向节点的指针,而不是void函数
- 如何在 C++ 中将 void 函数传递给 void 指针
- 将通用引用强制转换为可调用的 void 指针,反之亦然
- C++为 void 指针分配一个字符串
- 为什么在将 void 指针转换为整数指针时出现分段错误
- 当我使用 void 函数的返回值(通过强制转换函数指针)时,究竟会发生什么?
- 调用向量的函数,给定向量的指针作为 void *
- 取消引用 void 指针以将值分配给结构
- 为什么新表达式可以正确生成指针类型,即使它应该返回 void*?
- C 与 C++,处理 void** 指针
- reinterpret_cast指向 void(*&)() 的成员函数指针
- 使用 void 指针:void **ptr.. 如何修改共享内存的值?
- 我可以将函数指针 void* 强制转换为 std::function 吗?
- void*不是一个指向对象类型的指针 - void **的铸造错误
- 如何使用空指针(void*)
- 指针(void指针)和函数有一点混淆