将 wchar_t 打印到控制台时出现内存泄漏问题?

Memory leak issue with printing wchar_t to console?

在 C++ 程序中,我有一个指向 wchar_t 值的指针。为了在指针指向的地址处获取值,我正在执行以下操作:

std::wstring myAnimalID;
wchart_t* ptr;
ptr = animal->second ->animalID //pointer from a previously defined instance
 myAnimalID =*ptr

但是,当我打印时,它只打印 wchar 的第一个值。

我做错了什么,无法打印整个值?我尝试指定 myAnimalID wchar_t 值的大小,但出现访问冲突错误。

我知道有人问过类似的问题,但我不想在旧线程上提问。

感谢任何建议。

当您说 *ptr 时,您取消引用指针并访问它的第一个元素。如果 animalIDwchart_t* 那么只需将其分配给 myAnimalID 就足够了。

std::wstring myAnimalID = animal->second ->animalID;