C++ Programming/Code/Standard C Library
Standard C Library
[edit | edit source]The C standard library is the C language standardized collection of header files and library routines used to implement common operations, such as input/output and string handling. It became part of the C++ Standard Library as the Standard C Library in its ANSI C 89 form with some small modifications to make it work better with the C++ Standard Library but remaining outside of the std namespace
. Header files in the C++ Standard Library do not end in ".h". However, the C++ Standard Library includes 18 header files from the C Standard Library, with ".h" endings. Their use is deprecated (ISO/IEC 14882:2003(E) Programming Languages — C++).
For a more in depth look into the C programming language check the C Programming Wikibook but be aware of the incompatibilities we have already covered on the Comparing C++ with C Section of this book.
All Standard C Library Functions
[edit | edit source]Functions | Descriptions |
---|---|
abort | The abort() function causes abnormal process termination to occur, unless the signal SIGABRT is being caught and the signal handler does not return |
abs | absolute value without minus |
acos | arc cosine |
asctime | a textual version of the time |
asin | arc sine |
assert | stops the program if an expression isn't true |
atan | arc tangent |
atan2 | arc tangent, using signs to determine quadrants |
atexit | sets a function to be called when the program exits |
atof | converts a string to a double |
atoi | converts a string to an integer |
atol | converts a string to a long |
bsearch | perform a binary search |
calloc | allocates and clears a two-dimensional chunk of memory |
ceil | the smallest integer not less than a certain value |
clearerr | clears errors |
clock | returns the amount of time that the program has been running |
cos | cosine |
cosh | hyperbolic cosine |
ctime | returns a specifically formatted version of the time |
difftime | the difference between two times |
div | returns the quotient and remainder of a division |
exit | stop the program |
exp | returns "e" raised to a given power |
fabs | absolute value for floating-point numbers |
fclose | close a file |
feof | true if at the end-of-file |
ferror | checks for a file error |
fflush | writes the contents of the output buffer |
fgetc | get a character from a stream |
fgetpos | get the file position indicator |
fgets | get a string of characters from a stream |
floor | returns the largest integer not greater than a given value |
fmod | returns the remainder of a division |
fopen | open a file |
fprintf | print formatted output to a file |
fputc | write a character to a file |
fputs | write a string to a file |
fread | read from a file |
free | returns previously allocated memory to the operating system |
freopen | open an existing stream with a different name |
frexp | decomposes a number into scientific notation |
fscanf | read formatted input from a file |
fseek | move to a specific location in a file |
fsetpos | move to a specific location in a file |
ftell | returns the current file position indicator |
fwrite | write to a file |
getc | read a character from a file |
getchar | read a character from STDIN |
getenv | get environment information about a variable |
gets | read a string from STDIN |
gmtime | returns a pointer to the current Greenwich Mean Time |
isalnum | true if a character is alphanumeric |
isalpha | true if a character is alphabetic |
iscntrl | true if a character is a control character |
isdigit | true if a character is a digit |
isgraph | true if a character is a graphical character |
islower | true if a character is lowercase |
isprint | true if a character is a printing character |
ispunct | true if a character is punctuation |
isspace | true if a character is a space character |
isupper | true if a character is an uppercase character |
itoa | Convert a integer to a string |
isxdigit | true if a character is a hexadecimal character |
labs | absolute value for long integers |
ldexp | computes a number in scientific notation |
ldiv | returns the quotient and remainder of a division, in long integer form |
localtime | returns a pointer to the current time |
log | natural logarithm |
log10 | natural logarithm, in base 10 |
longjmp | start execution at a certain point in the program |
malloc | allocates memory |
memchr | searches an array for the first occurrence of a character |
memcmp | compares two buffers |
memcpy | copies one buffer to another |
memmove | moves one buffer to another |
memset | fills a buffer with a character |
mktime | returns the calendar version of a given time |
modf | decomposes a number into integer and fractional parts |
perror | displays a string version of the current error to STDERR |
pow | returns a given number raised to another number |
printf | write formatted output to STDOUT |
putc | write a character to a stream |
putchar | write a character to STDOUT |
puts | write a string to STDOUT |
qsort | perform a quicksort. |
raise | send a signal to the program |
rand | returns a pseudo-random number |
realloc | changes the size of previously allocated memory |
remove | erase a file |
rename | rename a file |
rewind | move the file position indicator to the beginning of a file |
scanf | read formatted input from STDIN |
setbuf | set the buffer for a specific stream |
setjmp | set execution to start at a certain point |
setlocale | sets the current locale |
setvbuf | set the buffer and size for a specific stream |
signal | register a function as a signal handler |
sin | sine |
sinh | hyperbolic sine |
sprintf | write formatted output to a buffer |
sqrt | square root |
srand | initialize the random number generator |
sscanf | read formatted input from a buffer |
strcat | concatenates two strings |
strchr | finds the first occurrence of a character in a string |
strcmp | compares two strings |
strcoll | compares two strings in accordance to the current locale |
strcpy | copies one string to another |
strcspn | searches one string for any characters in another |
strerror | returns a text version of a given error code |
strftime | returns individual elements of the date and time |
strlen | returns the length of a given string |
strncat | concatenates a certain amount of characters of two strings |
strncmp | compares a certain amount of characters of two strings |
strncpy | copies a certain amount of characters from one string to another |
strpbrk | finds the first location of any character in one string, in another string |
strrchr | finds the last occurrence of a character in a string |
strspn | returns the length of a substring of characters of a string |
strstr | finds the first occurrence of a substring of characters |
strtod | converts a string to a double |
strtok | finds the next token in a string |
strtol | converts a string to a long |
strtoul | converts a string to an unsigned long
|
strxfrm | converts a substring so that it can be used by string comparison functions |
system | perform a system call |
tan | tangent |
tanh | hyperbolic tangent |
time | returns the current calendar time of the system |
tmpfile | return a pointer to a temporary file |
tmpnam | return a unique filename |
tolower | converts a character to lowercase |
toupper | converts a character to uppercase |
ungetc | puts a character back into a stream |
va_arg | use variable length parameter lists |
vprintf, vfprintf, and vsprintf | write formatted output with variable argument lists |
vscanf, vfscanf, and vsscanf | read formatted input with variable argument lists |
These routines included on the Standard C Library can be sub divided into: