_ungetc_nolock, _ungetwc_nolock
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at _ungetc_nolock, _ungetwc_nolock.
Pushes a character back onto the stream.
Syntax
int _ungetc_nolock(
int c,
FILE *stream
);
wint_t _ungetwc_nolock(
wint_t c,
FILE *stream
);
Parameters
c
Character to be pushed.
stream
Pointer to FILE
structure.
Return Value
If successful, each of these functions returns the character argument c
. If c
cannot be pushed back or if no character has been read, the input stream is unchanged and _ungetc_nolock
returns EOF
; _ungetwc_nolock
returns WEOF
. If stream
is NULL
, EOF
or WEOF
is returned and errno
is set to EINVAL
.
For information on these and other error codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.
Remarks
These functions are non-locking versions of ungetc
and ungetwc
. The versions with the _nolock
suffix are identical except that they are not protected from interference by other threads. They may be faster since they do not incur the overhead of locking out other threads. Use these functions only in thread-safe contexts such as single-threaded applications or where the calling scope already handles thread isolation.
Generic-Text Routine Mappings
TCHAR.H routine | _UNICODE & _MBCS not defined | _MBCS defined | _UNICODE defined |
---|---|---|---|
_ungettc_nolock |
_ungetc_nolock |
_ungetc_nolock |
_ungetwc_nolock |
Requirements
Routine | Required header |
---|---|
_ungetc_nolock |
<stdio.h> |
_ungetwc_nolock |
<stdio.h> or <wchar.h> |
For additional compatibility information, see Compatibility in the Introduction.
.NET Framework Equivalent
Not applicable. To call the standard C function, use PInvoke
. For more information, see Platform Invoke Examples.