尝试使用 GetModuleFileName 查找 exec 文件,但编号为 returns

Trying to find exec file using GetModuleFileName but returns numbers

这是我的代码。我有一个缓冲区来保存输出,但它 returns 数字。有人可以解释一下吗?我怎样才能得到我的 exe 文件?

wchar_t buffer[MAX_PATH];
GetModuleFileName(NULL,buffer,sizeof(buffer));
cout << buffer << "\n";

cout 是控制台输出的 ansi 版本。你必须使用宽版本的 cout:wcout:

wchar_t buffer[MAX_PATH];
GetModuleFileName(NULL,buffer,sizeof(buffer));
wcout << buffer << "\n";

或者全部使用ansi版本:

char buffer[MAX_PATH];
GetModuleFileNameA(NULL,buffer,sizeof(buffer));
cout << buffer << "\n";