std::string을 사용한 파일 쓰기: 미스터리 풀기
std::string을 파일에 쓰려고 할 때 사용자는 다음과 같은 작업을 수행할 수 있습니다. 예상치 못한 상자 결과 또는 손상된 문자가 발생합니다. 이 문제는 실제 문자 대신 포인터와 문자열 길이가 포함된 문자열의 이진 데이터를 작성할 때 발생합니다.
텍스트 파일의 경우 적절한 해결책은 std처럼 작동하는 ofstream을 사용하는 것입니다. ::cout이지만 출력을 파일로 보냅니다. 다음 예를 고려하십시오.
#include <fstream> #include <string> int main() { std::string input; std::cin >> input; std::ofstream out("output.txt"); out << input; out.close(); return 0; }
그러나 바이너리 데이터가 필요한 경우 실제 문자열 문자를 사용해야 합니다. 이는 string::c_str():
write.write(studentPassword.c_str(), studentPassword.size());
위 내용은 C의 파일에 std::string을 어떻게 올바르게 쓰나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!