【发布时间】:2015-07-15 13:42:34
【问题描述】:
我正在尝试在FTDI 芯片上创建一个文件,以便我可以写入和输出数据。我从手册中得知要创建文件需要编写以下代码行:
ftHandleFile = FT_W32_CreateFile((PVOID)LocId, GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);
但是,我收到以下错误
错误 1 错误 C2664: 'FT_HANDLE FT_W32_CreateFile(LPCTSTR,DWORD,DWORD,LPSECURITY_ATTRIBUTES,DWORD,DWORD,HANDLE)' : 无法将参数 1 从“PVOID”转换为 'LPCTSTR' c:\users\caristid\documents\visual studio 2013\项目\ftd2xx\ftd2xx\ftd2xx.cpp 100 1 ftd2xx
IntelliSense:“PVOID”类型的参数与“LPCTSTR”类型的参数不兼容 c:\Users\caristid\Documents\Visual Studio 2013\Projects\ftd2xx\ftd2xx\ftd2xx.cpp 100 35 ftd2xx
我认为这些是通用错误,只需使用正确的变量即可解决。
有人知道怎么做吗?
【问题讨论】:
-
你为什么要把第一个参数转换为 void 指针?
-
您的代码错误。但是您没有为任何人提供足够的信息来建议修复。
LocId的数据类型是什么? -
长整数。我将它声明为全局参数,FTDI 函数应该接受它并自己转换它