1

海我想将&var值转换为 char 数组。我怎样才能做到这一点?我正在使用 C++ Win32 API。 安全数组到字符

在另一个选项卡中打开图像,您将获得清晰的视图。

提前致谢。

4

1 回答 1

2

最简单的方法是使用 ATL::CComSafeArray。假设您在变量 pSa 中有一个指向安全数组的指针,

CComSafeArray<BSTR> array;
array.Attach(pSa);

for(int i=0; i< array.GetCount(); ++i)
{
  std::wcout << (const wchar_t*) array[i] << std::endl;
}

如果你只想使用win32,

SafeArrayLock(pSa);
LONG uBound = -1, lBound = 0;
SafeArrayUBound(pSa,1,uBound);
SafeArrayUBound(pSa,1,lBound);
int nCount = uBound - lBound + 1;
for(int i = 0; i<nCount; ++i)
{
 std::wcout << ((BSTR*)(pSa->pvData))[i] << std::endl;
}
于 2012-11-07T08:14:27.250 回答