我使用GetPrivateProfileStringA从.ini文件读取一些内容。我有一些其他的类,我把它们和一个字符串数组一起存储。我不得不使用它像这样得到一个正确的串入ControlAlt数组:C++ - 使用不带缓冲区的GetPrivateProfileString
char buffer[24];
GetPrivateProfileStringA("CONTROLS",
"ShiftUpAlt",
"LeftThumb",
buffer,
(DWORD)24,
"./Gears.ini");
scriptControl->ControlAlt[ScriptControls::ControlType::ShiftUp] = buffer;
我试图把它直接,就像这样:
GetPrivateProfileStringA("CONTROLS",
"ShiftUpAlt",
"LeftThumb",
(LPSTR)scriptControl->ControlAlt[ScriptControls::ControlType::ShiftUp],
(DWORD)24,
"./Gears.ini");
但随后ControlAlt值一个LPSTR,在与适当的字符串进行比较时会产生复杂的后果。有没有办法不使用缓冲区呢?
ControlAlt被定义为std::string ControlAlt[SIZEOF_ControlType];
'scriptControl-> ControlAlt [ScriptControls :: ControlType :: ShiftUp]'的类型是什么? – MikeCAT
你了解指针和数组的区别吗? – IInspectable
ControlAlt []是一个字符串数组。另外,指针呢? scriptControl是一个指针,但ControlAlt只是一个字符串数组。 – ikt