다음을 통해 공유


_setmode

파일 변환 모드를 설정합니다.

int _setmode (
   int fd,
   int mode 
);

매개 변수

  • fd
    파일 설명자입니다.

  • mode
    새 번역 모드입니다.

반환 값

연결에 성공 하면 이전 번역 모드를 반환 합니다.

이 함수에 잘못 된 매개 변수가 전달 되 면 잘못 된 매개 변수 처리기를의 설명에 따라 호출 됩니다 매개 변수 유효성 검사.실행을 계속 하려면이 함수 반환-1 및 집합 수 있으면 errno 은 EBADF, 잘못 된 파일 설명자를 나타냅니다 또는 EINVAL에서 잘못 된 나타내는 mode 인수입니다.

이러한 기능 및 다른 반환 코드에 대 한 자세한 내용은 참조 하십시오. _doserrno, errno, _sys_errlist, 및 _sys_nerr.

설명

_setmode 함수를 설정 mode 변환 모드에서 지정 된 파일의 fd.전달 _O_TEXT 와 mode (번역) 텍스트를 설정 모드입니다.바꿈 (CR-LF) 조합을 캐리지 return–line 한 줄 바꿈 문자 입력을 변환 합니다.줄 바꿈된 문자 출력에서 CR-LF 조합으로 변환 됩니다.전달 _O_BINARY 이러한 변환을 고치지 세트 이진 (변환 되지 않은) 모드입니다.

전달할 수도 있습니다 _O_U16TEXT, _O_U8TEXT, 또는 _O_WTEXT 이 문서에서 나중에 두 번째 예제에서와 같이 유니코드 모드를 사용할 수 있습니다._setmode기본 변환 모드를 수정 하려면 일반적으로 사용 됩니다 stdin 및 stdout, 있지만 모든 파일을 사용할 수 있습니다.적용 하는 경우 _setmode 스트림에 대 한 파일 설명자를 호출 _setmode 입력 또는 출력 스트림에서 작업을 수행 하기 전에.

주의 정보주의

데이터 파일 스트림에 명시적으로 플러시 코드를 사용 하 여 작성 하는 경우 fflush 를 사용 하기 전에 _setmode 의 모드를 변경 합니다.코드를 플러시하지 예기치 않은 동작을 얻을 수 있습니다.스트림에 데이터를 작성 한 경우 코드를 플러시할 필요가 없습니다.

요구 사항

루틴

필수 헤더

선택적 헤더

_setmode

<io.h>

<fcntl.h>

더 많은 호환성 정보를 참조 하십시오. 호환성.

예제

// crt_setmode.c
// This program uses _setmode to change
// stdin from text mode to binary mode.


#include <stdio.h>
#include <fcntl.h>
#include <io.h>

int main( void )
{
   int result;

   // Set "stdin" to have binary mode:
   result = _setmode( _fileno( stdin ), _O_BINARY );
   if( result == -1 )
      perror( "Cannot set mode" );
   else
      printf( "'stdin' successfully changed to binary mode\n" );
}
  
// crt_setmodeunicode.c
// This program uses _setmode to change
// stdout to Unicode. Cyrillic and Ideographic
// characters will appear on the console (if
// your console font supports those character sets).

#include <fcntl.h>
#include <io.h>
#include <stdio.h>

int main(void) {
    _setmode(_fileno(stdout), _O_U16TEXT);
    wprintf(L"\x043a\x043e\x0448\x043a\x0430 \x65e5\x672c\x56fd\n");
    return 0;

}.NET Framework에 있는 해당

참고 항목

참조

파일 처리

_creat, _wcreat

통해, _wfopen

_open, _wopen

_set_fmode