读.ini文件值问题
头文件中定义
String Currentdir;
在form初始化中
GetCurrentDirectory(128,Currentdir.c_str());
。。。。
然后在子程序中
GetPrivateProfileString( "set ", "name ", "NULL ",set_name.c_str(),MAX_PATH,iniset_dir.c_str());
这句执行完后。Currentdir.c_str()的值等于set_name.c_str;
这是怎么回事??我并没有对Currentdir重新赋值啊
[解决办法]
汗。。。String类的c_str()是比较不安全的,特别是在类似楼上这样的应用方式。
还是这样用吧:
头文件中定义
char szCurrentDir[MAX_PATH];
在form初始化中
GetCurrentDirectory(MAX_PATH, szCurrentDir);