关于string在GetPrivateProfileString中字符转换有关问题

关于string在GetPrivateProfileString中字符转换问题C/C++ codestring strSAS::GetPrivateProfileString(

关于string在GetPrivateProfileString中字符转换问题

C/C++ code
string strSAS;::GetPrivateProfileString("Address" , "FullAddr" , "" ,strSAS,strSAS.length(strSAS),".\\SASAddr.ini");cout<<strSAS<<endl;


在使用GetPrivateProfileString中出现问题:
 error C2660: “std::basic_string<_Elem,_Traits,_Ax>::length”: 函数不接受 1 个参数
error C2664: “GetPrivateProfileStringA”: 不能将参数 4 从“std::string”转换为“LPSTR”
error C2679: 二进制“<<”: 没有找到接受“std::string”类型的右操作数的运算符(或没有可接受的转换)

我不实用string 而如果使用char strSAS[32]的话(参数改为sizeof(strSAS))就没有这种问题。
请教下这是为什么?

[解决办法]
::GetPrivateProfileString 的参数类型,你看看msdn说明.