c++ - 无法从 char 转换为 void*

标签 c++ windows

SAFEARRAYBOUND bound[1] = {25, 0};
SAFEARRAY * psa = SafeArrayCreate(VT_UI1, 1, bound);
for(long int i = 0; i <25; i++)
    SafeArrayPutElement(psa, &i,sendBuf[i]);

我正在尝试创建一个 safearray来自 char 数组但出现此错误 cannot convert from char to void* sendBuf 是一个字符数组

最佳答案

您没有向我们显示错误,但 SafeArrayPutElement 似乎将指向该元素的指针 作为第三个参数。我相信如果你使用它会起作用:

SafeArrayPutElement(psa, &i, &sendBuf[i]);

注意 &

关于c++ - 无法从 char 转换为 void*,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9687491/

相关文章:

c++ - 奇怪的符号、文本和实际字符在数组中消失/改变

c++ - 使用 while 循环计算前 n 个斐波那契数的程序

c++ - 将字符串转换为 MAC 地址

c++ - 在类头文件中声明一个字符串数组 - 编译器认为字符串是变量名?

javascript - 单击托盘图标时,Electron (Windows) 不显示菜单

windows - 使用包含空格的参数调用 Qpr​​ocess - Windows

c - Visual Studio 2010 运行时检查失败 #3

C++初始化列出多个初始化

java - 使用 Java 在 Windows 和 Mac 上读取和写入文件以打包到项目中

windows - $(shell some-command) 等效于 Visual Studio 项目宏?