"msvcrt" --- Useful routines from the MS VC++ runtime
*****************************************************

======================================================================

These functions provide access to some useful capabilities on Windows
platforms. Some higher-level modules use these functions to build the
Windows implementations of their services.  For example, the "getpass"
module uses this in the implementation of the "getpass()" function.

이 함수에 대한 자세한 설명은 플랫폼 API 설명서에서 찾을 수 있습니다.

이 모듈은 콘솔 I/O api의 일반과 광폭(wide) 문자 변형을 모두 구현합니다
. 일반 API는 ASCII 문자만 다루며 국제화된 응용 프로그램에서는 제한적으
로 사용됩니다. 가능하면 광폭 문자 API를 사용해야 합니다.

버전 3.3에서 변경: 이 모듈의 연산은 이제 "IOError"를 발생시키던 곳에서
"OSError"를 발생시킵니다.


파일 연산
=========

msvcrt.locking(fd, mode, nbytes)

   Lock part of a file based on file descriptor *fd* from the C
   runtime.  Raises "OSError" on failure.  The locked region of the
   file extends from the current file position for *nbytes* bytes, and
   may continue beyond the end of the file.  *mode* must be one of the
   "LK_*" constants listed below. Multiple regions in a file may be
   locked at the same time, but may not overlap.  Adjacent regions are
   not merged; they must be unlocked individually.

   인자 "fd", "mode", "nbytes"로 감사 이벤트 "msvcrt.locking"을 발생시
   킵니다.

msvcrt.LK_LOCK
msvcrt.LK_RLCK

   Locks the specified bytes. If the bytes cannot be locked, the
   program immediately tries again after 1 second.  If, after 10
   attempts, the bytes cannot be locked, "OSError" is raised.

msvcrt.LK_NBLCK
msvcrt.LK_NBRLCK

   지정된 바이트를 잠급니다. 바이트를 잠글 수 없으면, "OSError"가 발생
   합니다.

msvcrt.LK_UNLCK

   이전에 잠겨 있어야 하는 지정된 바이트의 잠금을 해제합니다.

msvcrt.setmode(fd, flags)

   파일 기술자 *fd*의 줄 종료 변환 모드를 설정합니다. 텍스트 모드로 설
   정하려면, *flags*가 "os.O_TEXT" 여야 합니다; 바이너리는,
   "os.O_BINARY" 여야 합니다.

msvcrt.open_osfhandle(handle, flags)

   Create a C runtime file descriptor from the file handle *handle*.
   The *flags* parameter should be a bitwise OR of "os.O_APPEND",
   "os.O_RDONLY", and "os.O_TEXT".  The returned file descriptor may
   be used as a parameter to "os.fdopen()" to create a file object.

   인자 "handle", "flags"로 감사 이벤트 "msvcrt.open_osfhandle"을 발생
   시킵니다.

msvcrt.get_osfhandle(fd)

   Return the file handle for the file descriptor *fd*.  Raises
   "OSError" if *fd* is not recognized.

   인자 "fd"로 감사 이벤트 "msvcrt.get_osfhandle"을 발생시킵니다.


콘솔 I/O
========

msvcrt.kbhit()

   Return "True" if a keypress is waiting to be read.

msvcrt.getch()

   Read a keypress and return the resulting character as a byte
   string. Nothing is echoed to the console.  This call will block if
   a keypress is not already available, but will not wait for "Enter"
   to be pressed. If the pressed key was a special function key, this
   will return "'\000'" or "'\xe0'"; the next call will return the
   keycode. The "Control-C" keypress cannot be read with this
   function.

msvcrt.getwch()

   유니코드 값을 반환하는 "getch()"의 광폭 문자 변형.

msvcrt.getche()

   Similar to "getch()", but the keypress will be echoed if it
   represents a printable character.

msvcrt.getwche()

   유니코드 값을 반환하는 "getche()"의 광폭 문자 변형.

msvcrt.putch(char)

   버퍼링하지 않고 바이트열 *char*을 콘솔에 인쇄합니다.

msvcrt.putwch(unicode_char)

   유니코드 값을 받아들이는 "putch()"의 광폭 문자 변형.

msvcrt.ungetch(char)

   바이트열 *char*이 콘솔 버퍼로 "푸시백" 되도록 합니다; "getch()" 나
   "getche()"가 읽는 다음 문자가 됩니다.

msvcrt.ungetwch(unicode_char)

   유니코드 값을 받아들이는 "ungetch()"의 광폭 문자 변형.


기타 함수
=========

msvcrt.heapmin()

   강제로 "malloc()" 힙이 자신을 정리하고, 사용하지 않는 블록을 운영
   체제로 반환하도록 합니다. 실패하면, "OSError"가 발생합니다.

msvcrt.CRT_ASSEMBLY_VERSION

   The CRT Assembly version, from the "crtassem.h" header file.

msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN

   The VC Assembly public key token, from the "crtassem.h" header
   file.

msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX

   The Libraries Assembly name prefix, from the "crtassem.h" header
   file.
