• About This Book
    • Who Should Read This Book
    • Portability Considerations
  • The C Library
    • Summary of Library Functions
      • Error Handling
      • Process Control
      • File and Directory Management
      • Searching and Sorting
      • Regular Expressions
      • Mathematical
        • Trigonometric Functions
        • Bessel Functions
      • Date, Time, and Monetary Manipulation
      • Messages
      • Type Conversion
        • Multibyte and Wide-Character Type Conversion
      • Stream Input/Output
        • Formatted Input/Output
        • Character and String Input/Output
        • Wide Character and String Input/Output
        • Direct Input/Output
        • File Positioning
        • File Access
        • File Operations
      • Low-Level Input/Output
        • Port Input/Output
        • Character and String Input/Output
        • Direct Input/Output
        • File Positioning
        • File Access
        • File Operations
      • Handling Argument Lists
      • Pseudorandom Numbers
      • Dynamic Memory Management
        • Allocating and Freeing Memory
        • Heap Information and Checking
        • Heap Creation and Management
      • Memory Objects
      • Environment Interaction
        • Setting and Querying Locale
        • String and Character Collating
      • String Operations
      • Character Testing
      • Character Case Mapping
      • Wide Character String Operation Functions
    • Differentiating between Memory Management Functions
      • Heap-Specific Functions
    • Infinity and NaN Support
      • Infinity and NaN in Library Functions
        • scanf Family
        • printf Family
        • String Conversion Functions
        • Math Functions
    • Using Low-Level I/O Functions
  • Library Functions
    • abort - Stop a Program
    • abs - Calculate Integer Absolute Value
    • access - Determine Access Mode
    • acos - Calculate Arccosine
    • asctime - Convert Time to Character String
    • asin - Calculate Arcsine
    • assert - Verify Condition
    • atan - atan2 - Calculate Arctangent
    • atexit - Record Program Termination Function
    • atof - Convert Character String to Float
    • atoi - Convert Character String to Integer
    • atol - Convert Character String to Long Integer
    • _atold - Convert Character String to Long Double
    • _beginthread - Create New Thread
    • Bessel Functions - Solve Differential Equations
    • bsearch - Search Arrays
    • calloc - Reserve and Initialize Storage
    • catclose - Closes a Specified Message Catalog
    • catgets - Retrieves a Message from a Catalog
    • catopen - Opens a Specified Message Catalog
    • ceil - Find Integer >= Argument
    • _cgets - Read String of Characters from Keyboard
    • chdir - Change Current Working Directory
    • _chdrive - Change Current Working Drive
    • chmod - Change File Permission Setting
    • _chsize - Alter Length of File
    • clearerr - Reset Error Indicators
    • clock - Determine Processor Time
    • close - Close File Associated with Handle
    • cos - Calculate Cosine
    • cosh - Calculate Hyperbolic Cosine
    • _cprintf - Print Characters to Screen
    • _cputs - Write String to Screen
    • creat - Create New File
    • _CRT_init - Initialize DLL Run-Time Environment
    • _CRT_term - Terminate DLL Run-Time Environment
    • _cscanf - Read Data from Keyboard
    • ctime - Convert Time to Character String
    • _cwait - Wait for Child Process
    • difftime - Compute Time Difference
    • div - Calculate Quotient and Remainder
    • _DLL_InitTerm - Initialize and Terminate DLL Environment
    • dup - Associate Second Handle with Open File
    • dup2 - Associate Second Handle with Open File
    • _ecvt - Convert Floating-Point to Character
    • _endthread - Terminate Current Thread
    • __eof - Determine End of File
    • erf - erfc - Calculate Error Functions
    • execl - _execvpe - Load and Run Child Process
    • exit - End Program
    • _exit - End Process
    • exp - Calculate Exponential Function
    • fabs - Calculate Floating-Point Absolute Value
    • fclose - Close Stream
    • _fcloseall - Close All Open Streams
    • _fcvt - Convert Floating-Point to String
    • fdopen - Associates Input Or Output With File
    • feof - Test End-of-File Indicator
    • ferror - Test for Read/Write Errors
    • fflush - Write Buffer to File
    • fgetc - Read a Byte
    • fgetpos - Get File Position
    • fgets - Read a String
    • fgetwc - Read Wide Character from Stream
    • fgetws - Read Wide-Character String from Stream
    • _filelength - Determine File Length
    • fileno - Determine File Handle
    • floor - Integer <= Argument
    • _flushall - Write Buffers to Files
    • fmod - Calculate Floating-Point Remainder
    • fopen - Open Files
    • fprintf - Write Formatted Data to a Stream
    • fputc - Write a Byte
    • fputs - Write String
    • fputwc - Write Wide Character
    • fputws - Write Wide-Character String
    • fread - Read Items
    • free - Release Storage Blocks
    • freopen - Redirect Open Files
    • frexp - Separate Floating-Point Value
    • fscanf - Read Formatted Data
    • fseek - Reposition File Position
    • fsetpos - Set File Position
    • fstat - Information about Open File
    • ftell - Get Current Position
    • _ftime - Store Current Time
    • _fullpath - Get Full Path Name of Partial Path
    • fwrite - Write Items
    • gamma - Gamma Function
    • _gcvt - Convert Floating-Point to String
    • getc - getchar - Read a Byte
    • _getch - _getche - Read Character from Keyboard
    • _getcwd - Get Path Name of Current Directory
    • _getdcwd - Get Full Path Name of Current Directory
    • _getdrive - Get Current Working Drive
    • getenv - Search for Environment Variables
    • getpid - Get Process Identifier
    • gets - Read a Line
    • getwc - Read Wide Character from Stream
    • getwchar - Get Wide Character from stdin
    • gmtime - Convert Time
    • _heapchk - Validate Default Memory Heap
    • _heapmin - Release Unused Memory from Default Heap
    • _heapset - Validate and Set Default Heap
    • _heap_walk - Return Information about Default Heap
    • hypot - Calculate Hypotenuse
    • iconv - Convert Characters to New Code Set
    • iconv_close - Remove Conversion Descriptor
    • iconv_open - Create Conversion Descriptor
    • isalnum to isxdigit - Test Integer Value
    • isascii - Test Integer Values
    • isatty - Test Handle for Character Device
    • _iscsym - _iscsymf - Test Integer
    • iswalnum to iswxdigit - Test Wide Integer Value
    • iswctype - Test for Character Property
    • _itoa - Convert Integer to String
    • _kbhit - Test for Keystroke
    • labs - Calculate Absolute Value of Long Integer
    • ldexp - Multiply by a Power of Two
    • ldiv - Perform Long Division
    • lfind - lsearch - Find Key in Array
    • localeconv - Retrieve Information from the Environment
    • localtime - Convert Time
    • log - Calculate Natural Logarithm
    • log10 - Calculate Base 10 Logarithm
    • longjmp - Restore Stack Environment
    • lseek - Move File Pointer
    • _ltoa - Convert Long Integer to String
    • _makepath - Create Path
    • malloc - Reserve Storage Block
    • _matherr - Process Math Library Errors
    • max - Return Larger of Two Values
    • mblen - Determine Length of Multibyte Character
    • mbstowcs - Convert Multibyte String to Wide-Character String
    • mbtowc - Convert Multibyte Character to Wide Character
    • memchr - Search Buffer
    • memcmp - Compare Buffers
    • memcpy - Copy Bytes
    • memicmp - Compare Bytes
    • memmove - Copy Bytes
    • memset - Set Bytes to Value
    • _mheap - Query Memory Heap for Allocated Object
    • min - Return Lesser of Two Values
    • mkdir - Create New Directory
    • mktime - Convert Local Time
    • modf - Separate Floating-Point Value
    • _msize - Return Number of Bytes Allocated
    • nl_langinfo - Retrieve Locale Information
    • _onexit - Record Termination Function
    • open - Open File
    • perror - Print Error Message
    • pow - Compute Power
    • printf - Print Formatted Characters
    • putc - putchar - Write a Byte
    • _putch - Write Character to Screen
    • putenv - Modify Environment Variables
    • puts - Write a String
    • putwc - Write Wide Character
    • putwchar - Write Wide Character to stdout
    • qsort - Sort Array
    • querylocaleenv - Query Locale Environment Variables
    • raise - Send Signal
    • rand - Generate Random Number
    • read - Read Into Buffer
    • realloc - Change Reserved Storage Block Size
    • regcomp - Compile Regular Expression
    • regerror - Return Error Message for Regular Expression
    • regexec - Execute Compiled Regular Expression
    • regfree - Free Memory for Regular Expression
    • remove - Delete File
    • rename - Rename File
    • rewind - Adjust Current File Position
    • rmdir - Remove Directory
    • _rmem_init - Initialize Memory Functions for Subsystem DLL
    • _rmem_term - Terminate Memory Functions for Subsystem DLL
    • _rmtmp - Remove Temporary Files
    • scanf - Read Data
    • _searchenv - Search for File
    • setbuf - Control Buffering
    • _set_crt_msg_handle - Change Run-Time Message Output Destination
    • setjmp - Preserve Environment
    • setlocale - Set the Locale of the Program
    • _setmode - Set File Translation Mode
    • setvbuf - Control Buffering
    • signal - Handle Interrupt Signals
    • sin - Calculate Sine
    • sinh - Calculate Hyperbolic Sine
    • _sopen - Open Shared File
    • _spawnl - _spawnvpe - Start and Run Child Processes
    • _splitpath - Decompose Path Name
    • sprintf - Print Formatted Data to Buffer
    • sqrt - Calculate Square Root
    • srand - Set Seed for rand Function
    • sscanf - Read Data
    • stat - Get Information about File or Directory
    • strcat - Concatenate Strings
    • strchr - Search for Byte
    • strcmp - Compare Strings
    • strcmpi - Compare Strings Without Case Sensitivity
    • strcoll - Compare Strings Using Collation Rules
    • strcpy - Copy Strings
    • strcspn - Get Length of a Substring
    • _strdate - Copy Current Date
    • strdup - Duplicate String
    • strerror - Set Pointer to Run-Time Error Message
    • _strerror - Set Pointer to System Error String
    • strfmon - Convert Monetary Value to String
    • strftime - Convert to Formatted Time
    • stricmp - Compare Strings as Lowercase
    • strlen - Determine String Length
    • strlwr - Convert Uppercase to Lowercase
    • strncat - Concatenate Strings
    • strncmp - Compare Strings
    • strncpy - Copy Strings
    • strnicmp - Compare Strings Without Case Sensitivity
    • strnset - strset - Set Bytes in String
    • strpbrk - Find Bytes in String
    • strptime - Convert to Formatted Date and Time
    • strrchr - Find Last Occurrence of Byte in String
    • strrev - Reverse String
    • strspn - Get Length of Substring
    • strstr - Locate Substring
    • _strtime - Copy Time
    • strtod - Convert Character String to Double
    • strtok - Tokenize String
    • strtol - Convert Character String to Long Integer
    • strtold - Convert String to Long Double
    • strtoul - Convert String Segment to Unsigned Integer
    • strupr - Convert Lowercase to Uppercase
    • strxfrm - Transform String
    • swab - Swap Adjacent Bytes
    • system - Invoke the Command Processor
    • tan - Calculate Tangent
    • tanh - Calculate Hyperbolic Tangent
    • _tell - Get Pointer Position
    • tempnam - Produce Temporary File Name
    • _threadstore - Access Thread-Specific Storage
    • time - Determine Current Time
    • tmpfile - Create Temporary File
    • tmpnam - Produce Temporary File Name
    • _toascii - _tolower - _toupper - Convert Character
    • tolower - toupper - Convert Character Case
    • towlower - towupper - Convert Wide Character Case
    • tzset - Set Time Zone Information
    • _uaddmem - Add Memory to a Heap
    • _ucalloc - Reserve and Initialize Memory from User Heap
    • _uclose - Close Heap from Use
    • _ucreate - Create a Memory Heap
    • _udefault - Change the Default Heap
    • _udestroy - Destroy a Heap
    • _uheapchk - Validate Memory Heap
    • _uheapmin - Release Unused Memory in User Heap
    • _uheapset - Validate and Set Memory Heap
    • _uheap_walk - Return Information about Memory Heap
    • _ultoa - Convert Unsigned Long Integer to String
    • _umalloc - Reserve Memory Blocks from User Heap
    • umask - Sets File Mask of Current Process
    • ungetc - Push Byte onto Input Stream
    • _ungetch - Push Character Back to Keyboard
    • ungetwc - Push Wide Character onto Input Stream
    • unlink - Delete File
    • _uopen - Open Heap for Use
    • _ustats - Get Information about Heap
    • utime - Set Modification Time
    • va_arg - va_end - va_start - Access Function Arguments
    • vfprintf - Print Argument Data to Stream
    • vprintf - Print Argument Data
    • vsprintf - Print Argument Data to Buffer
    • wait - Wait for Child Process
    • wcscat - Concatenate Wide-Character Strings
    • wcschr - Search for Wide Character
    • wcscmp - Compare Wide-Character Strings
    • wcscoll - Compare Wide-Character Strings
    • wcscpy - Copy Wide-Character Strings
    • wcscspn - Find Offset of First Wide-Character Match
    • wcsftime - Convert to Formatted Date and Time
    • wcslen - Calculate Length of Wide-Character String
    • wcsncat - Concatenate Wide-Character Strings
    • wcsncmp - Compare Wide-Character Strings
    • wcsncpy - Copy Wide-Character Strings
    • wcspbrk - Locate Wide Characters in String
    • wcsrchr - Locate Wide Character in String
    • wcsspn - Search Wide-Character Strings
    • wcsstr - Locate Wide-Character Substring
    • wcstod - Convert Wide-Character String to Double
    • wcstok - Tokenize Wide-Character String
    • wcstol - Convert Wide-Character to Long Integer
    • wcstombs - Convert Wide-Character String to Multibyte String
    • wcstoul - Convert Wide-Character String to Unsigned Long
    • wcswcs - Locate Wide-Character Substring
    • wcswidth - Determine Display Width of Wide-Character String
    • wcsxfrm - Transform Wide-Character String
    • wctob - Convert Wide Character to Byte
    • wctomb - Convert Wide Character to Multibyte Character
    • wctype - Get Handle for Character Property Classification
    • wcwidth - Determine Display Width of Wide Character
    • write - Writes from Buffer to File
  • Notices
    • Copyright Notices
    • Disclaimers
    • Trademarks
  • Glossary
    • A
      • abstraction (data)
      • access
      • access mode
      • alignment
      • American National Standards Institute
      • ANSI (American National Standards Institute)
      • API (application program interface)
      • application
      • application program
      • argument
      • array
      • array element
      • ASCII (American National Standard Code for Information Interchange)
    • B
      • backslash
      • binary stream
      • blank character
      • block
      • boundary alignment
      • brackets
      • built-in
    • C
      • C++ class library
      • C++ library
      • call
      • cast
      • character
      • character array
      • character class
      • character constant
      • character set
      • character string
      • child
      • class
      • class library
      • C library
      • code page
      • codeset
      • collating element
      • collating sequence
      • collection
      • Collection Class Library
      • command
      • condition
      • const
      • constant
      • control character
      • conversion
      • conversion descriptor
      • coordinated universal time (UTC)
      • current working directory
    • D
      • data object
      • data stream
      • data type
      • DBCS (double-byte character set)
      • declaration
      • default locale
      • define directive
      • definition
      • delete
      • device
      • directory
      • display
      • dot
      • double-byte character set
      • double-precision
      • dump
      • dynamic
    • E
      • EBCDIC (extended binary-coded decimal interchange code)
      • E-format
      • element
      • empty string
      • epoch
      • exception
      • exception handler
      • executable file
      • extension
    • F
      • file mode
      • file mode bits
      • file scope
      • for statement
      • function
      • function call
    • G
      • global
      • global variable
      • GMT (Greenwich Mean Time)
      • Greenwich Mean Time
    • H
      • header file
      • heap
    • I
      • I18N
      • identifier
      • if statement
      • include directive
      • include file
      • input stream
      • instance
      • instruction
      • internationalization
      • iteration
    • K
      • key access
      • keyword
    • L
      • label
      • library
      • link
      • linker
      • literal
      • local
      • locale
      • lvalue
    • M
      • macro
      • mask
      • member
      • method
      • migrate
      • mode
      • module
      • multibyte code set (MBCS)
      • multitasking
    • N
      • name
      • NULL
      • null character (NUL)
      • null pointer
      • null string
      • null value
    • O
      • object
      • open file
      • operating system (OS)
      • operator precedence
      • overflow
    • P
      • parameter
      • parent process
      • path name
      • period
      • pointer
      • portable character set
      • portability
      • positional parameter
      • precedence
      • predefined macros
      • preprocessor
      • printable character
      • process
      • process ID
      • public
    • R
      • redirection
      • reentrant
      • regular expression
      • root
      • run-time library
    • S
      • scope
      • semaphore
      • sequence
      • session
      • signal
      • signal handler
      • space character
      • specifiers
      • standard error (stderr)
      • standard input (stdin)
      • standard output (stdout)
      • statement
      • static
      • stream
      • stream buffer
      • string
      • string constant
      • struct
      • structure
      • subsystem
      • support
    • T
      • text file
      • this
      • thread
      • tilde
      • token
      • trap
      • type
      • type conversion
      • type definition
      • type specifier
    • U
      • underflow
      • union
    • V
      • variable
    • W
      • while statement
      • white space
      • wide character
      • wide-character string
      • working directory