_sopen_s 예제

마이크로소프트는 _sopen_s에 찬성 하 여 _open 더 이상 사용되지 않습니다. 권장되는 동등한 인수는 무엇입니까? 이 Q&A를 게시한 이유는 Microsoft가 제공하지 않은 명확하지 않은 정보의 중요한 부분을 제공하기 때문입니다. _sopen_s가 _open을 대체할 수 없다는 것에 동의합니다. _sopen_s에 제공 되는 잘못 된 인수로 인해 발생 하는 버그를 해결 하기 때문에이 주제를 연구 만. _sopen_s는 컴파일러 경고를 제거하기 위해 코드에만 있었습니다. 원래 _open 호출은 괜찮았습니다. 오류의 경우 -1은 pfh를 통해 반환됩니다(pfh가 null 포인터인 경우 제외). 윈도우에서 나는 그렇게하지 않는 좋은 이유가없는 한 CreateFile을 사용하는 것이 좋습니다. 리눅스에서 “열기”어쨌든 “CreateFile”을 사용하는 라이브러리 기능에 , 윈도우에서, 커널 기능에매핑합니다. 이식성에 따라 이 기능은 Microsoft 플랫폼(Win32/64/CE)에서 다소 이식성이 높습니다. 그리고, 당연히, *nix에서 사용할 수 없습니다.

스택 오버플로우에 대한 답변을 참여해 주셔서 감사합니다! 영하지 않은 반환 값은 오류를 나타냅니다. 이 경우 errno는 다음 값 중 하나로 설정됩니다. 공유할 파일을 엽니다. 이러한 버전의 _sopen 및 _wsopen에는 CRT의 보안 기능에 설명된 대로 보안 기능이 향상되었습니다. “답변 게시”를 클릭하면 서비스 약관, 개인 정보 보호 정책 및 쿠키 정책에 동의하는 것이 가장 좋습니다. “안전” 기능은 기존, 표준 C 또는 POSIX와 같은 기능을 올바르게 사용하는 것에 비해 실제 안전 상의 이점을 제공하지 않으며, 잘못 사용하면 교체하려는 기능만큼 “안전하지 않음”입니다. 그럼 지금은 내 멋지게 포맷 된 답변을 게시 할 수 있습니다, 그래서 여기에있다 : 자세한 내용을 보려면, 좋은 답변을 작성하는 방법에 대한 우리의 팁을 참조하십시오. pfh 오류의 경우 파일 핸들 또는 -1.