我是 C++ 的菜鸟,但想学习。\etc\hosts
我有一个小程序,可以在 Windows 中将一些信息写入我的;我通过 获取%WINDIR%
变量GetEnvironmentVariable()
,如果我手动输入完整路径一切正常,但是当我用WINDIR
变量替换时,我的代码没有编译。我知道我做的不对。
#include <windows.h>
#include <ios>
#include <fstream>
char buffer[1000];
int main() {
GetEnvironmentVariable("WINDIR",(char*)&buffer,sizeof(buffer));
std::ofstream log;
log.open("%s\\system32\\drivers\\etc\\hosts", buffer);
log << "127.0.0.1 domain.com\n" << std::endl;
return 0;
}
我得到了非常丑陋的错误,例如:
C:\Documents and Settings\xtmtrx\Desktop\coding\windir.cpp 没有匹配函数调用 `
std::basic_ofstream<char, std::char_traits<char> >::open(const char[30], char[1000])
'