【发布时间】:2018-08-20 05:32:20
【问题描述】:
我正在尝试使用MultiByteToWideChar api。对于lpWideCharStr,当我使用具有动态内存分配的指针时,它可以正常工作。但是现在我应该使用带有静态内存分配的指针,正如您在代码中看到的那样。并且不能正常工作,返回0。
这有什么问题?
我应该如何在MultiByteToWideChar 中为lpWideCharStr 使用静态内存分配指针?
感谢您的解决方案。
#include <windows.h>
#include <iostream>
#include "Shlwapi.h"
#pragma comment(lib,"shlwapi.lib")
void main(int argc, char *argv[]){
int iToSizeB = 0;
iToSizeB = MultiByteToWideChar(CP_UTF8, 0, argv[1], -1 , NULL, 0);
LPWSTR lpFileAddress[260] = {0};
int nResult = 0;
//MultiByteToWideChar function reurns 0 !!!
nResult = MultiByteToWideChar(CP_UTF8, 0, argv[1], -1, lpFileAddress[0], iToSizeB);
}
【问题讨论】:
-
您应该会收到有关此代码的诊断消息
标签: c++ winapi visual-studio-2012 console-application