以下代码:
#include <iostream> #include <Windows.h> using namespace std; int main () { LPWSTR buffer; //or wchar_t * buffer; GetModuleFileName(NULL,buffer,MAX_PATH) ; cout<<buffer; cin.get(); cin.get(); }
应该显示程序执行的完整路径.但在VS 2012中,我收到错误:
uninitialized local variable ‘buffer’ used
代码有什么问题?
解决方法
你需要给它一个可以容纳一些字符的缓冲区;
wchar_t buffer[MAX_PATH];
例如.