将变体复制到字符*
copy variant to char*
如何在 C++ 中从变体复制到字符数组。到目前为止,我已经能够想出下面的片段。但需要帮助才能使其工作。
_variant_t vt_Data(parent->CharData);
if(vt_Data.vt != VT_NULL)
{
long ubound;
long lbound;
long length;
TSTHR(SafeArrayGetLBound(vt_Data.parray, 1, &lbound));
TSTHR(SafeArrayGetUBound(vt_Data.parray, 1, &ubound));
if(length = ubound - lbound +1)
{
char *char_data = new char[length];
TSTHR(SafeArrayAccessData(vt_Data.parray, (void **) &char_data))
memcpy(char_data, vt_Data.parray, length);
TSTHR(SafeArrayUnaccessData(vt_Data.parray));
}
}
如果parent->CharData
的类型是 char*、bstr 或 TCHAR*(或类似),那么以下内容应该有效。(虽然未经测试)
//uses the bstr_t const assignment operator to extract the string
_bstr_t bstr = vt_Data;
这将创建字符串的新副本。
相关文章:
- 在这种情况下,我真的复制了字节还是复制了字符?
- 如何返回/复制unique_ptr<无符号字符[]>的值?
- 使用动态分配将 char* 复制到另一个字符**
- 库达如何将字符**从内核复制到主机
- 将字符向量复制到另一个向量
- 如何将一个结构的字符数组复制到结构的另一个字符数组中?
- 将字符数组复制到 QByte 数组中,而无需传递指针
- 为什么我的代码在尝试复制字符数组时引发 C6386 错误?
- 使用 strcpy_s 将字符串复制到字符*
- 字符* 复制到另一个字符* 运行时错误
- C 内联汇编试图将STD :: String的字符复制到寄存器中
- 如何将 (ICU4C) Unicode 字符串逐个字符复制到另一个 Unicode 字符串
- 将第一个n个字符复制到std :: string
- 将无符号字符*复制到无符号字符
- 如何在 C++ 中将一些字符复制到字符串中
- 从未签名字符复制到无符号字符
- 您好,我想将一个字符复制到 2D 数组,但第二个字符会擦除第一个字符
- 将分配有 malloc 的字符 * 复制到 std::string
- 如何在c++中进行反向字符复制
- 如何将字符复制到字符数组