Syntax | Description |
---|---|
#include <stdio.h> | standard input and output functions |
#include <stdlib.h> | conversions & allocations functions |
#include <ctype.h> | characters testing functions |
#include <string.h> | string manipulation functions |
#include <math.h> | mathematical functions |
#include <time.h> | date & time functions |
#include <limits.h> | data types range constants |
#include <float.h> | floating point data types range constants |
stdio.h |
|
Syntax | Description |
---|---|
FILE *fopen(const char *name, const char *mode) |
file open |
FILE *freopen(const char
*name, const char *mode, FILE *fp) |
file reopen |
int fclose(FILE *fp) | file close |
size_t fread(void *ptr, size_t size, size_t n, FILE *fp) |
file read |
size_t fwrite(const void
*ptr, size_t size, size_t n, FILE *fp) |
file write |
int feof(FILE *fp) | check file pointer for end of file |
int fseek(FILE *fp, long offset, int mode) |
set file position |
int fflush(FILE *fp) | file flush |
long ftell(FILE *fp) | get file position |
void rewind(FILE *fp) | set file position to start of file |
int fgetpos(FILE *fp, fpos_t *ptr) |
write file position in *ptr |
int fsetpos(FILE *fp, const fpos_t *ptr) |
set file position from *ptr |
int rename(const char *oldname, const char *newname) |
rename file |
int remove(const char *name) | delete file |
FILE *tmpfile(void) | creates temporary binary file - will be deleted after program ends |
char *tmpnam(char *str) | get temporary (not opened) filename string |
void setbuf(FILE *fp, char *buf) | set stream buffering |
int setvbuf(FILE
*fp, char *buf, int mode, size_t size) |
set stream buffering |
int
printf(const char
*format, ...) |
formatted output to stdout |
int sprintf(const char *str, const char *format, ...) |
formatted output to string |
int fprintf(FILE *fp, const char *format, ...) |
formatted output to file |
int scanf(const char *format, ...) | formatted input from stdin |
int fscanf(FILE *fp, const char *format, ...) |
formatted input from file |
int sscanf(const char *str, const char *format, ...) |
formatted input from string |
int getchar(void) | read character from stdin |
int getc(FILE *fp) | read character from file stream |
int fgetc(FILE *fp) | read character from file stream |
int putchar(int c) | write character to stdout |
int putc(int c, FILE *fp) | write character from file stream |
int fputc(int c, FILE *fp) | write character from file stream |
int ungetc(int c, FILE *fp) | |
char *gets(char *str) | read line from stdin |
char *fgets(char *str,
int n, FILE *fp) |
read line from file stream |
int puts(const char *str) | write line to stdout |
int fputs(const
char *str, FILE *fp) |
write line to file stream |
void clearerr(FILE *fp) | clear file eof and error flags |
int ferror(FILE *fp) | check file pointer for file error |
void perror(const char *str) | print error message to stderr |
stdlib.h |
|
Syntax | Description |
void *malloc(size_t size) | allocate memory |
void *realloc(void *ptr, size_t size) | reallocate memory |
void *calloc(size_t
objnum, size_t objnum) |
allocate memory of objnum*objnum |
void free(void *ptr) | free allocated memory |
double atof(const char *str) | numeral string conversion to double |
int atoi(const char *str) | numeral string conversion to integer |
long atol(const char *str) | numeral string conversion to long |
double strtod(const char
*str, char **endptr) |
numeral string conversion to double |
long strtol(const
char *str, char **endptr, int base) |
numeral string conversion to long |
unsigned long strtoul(const char *str, char **endptr, int base) |
numeral string conversion to unsigned long |
void exit(int status) | normal program termination |
void abort(void) | abnormal program termination |
char *getenv(const char *name) | get environment variable |
int atexit(void (*funcptr)(void)) | register function call at program exit |
int system(const char *command) | executes system shell command |
int rand(void) | random integer in 0..RAND_MAX |
void srand(unsigned int seed) | set random sequence seed |
int abs(int x) | absolute value: |x| |
long labs(long x) | absolute value: |x| |
div_t div(int x, int y) | calculates quotient and reminder of x/y |
ldiv_t ldiv(long x, long y) | calculates quotient and reminder of x/y |
void bsearch(const
void *key, const void *base, size_t nobj, size_t size, int (*comp) (const void *,const void *)) |
binary search of a sorted array |
void qsort(void
*base, size_t nobj, size_t size, int (*comp) (const void *,const void *)) |
quick sort |
string.h |
|
Syntax | Description |
void *memcpy(void
*psrc, const void *pdest, size_t n) |
memory copy of n bytes from psrc to pdest |
int memcmp(const
void *p1, const void *p2, size_t n) |
memory compare of n bytes in p1 and p2 |
void *memmove(void
*p1, const void *p2, size_t n) |
memory copy of n bytes from p2 to p1 |
void *memset(const
void *p, int c, size_t n) |
memory character set of c in p..p+n-1 addresss range |
void *memchr(const
void *p, int c, size_t n) |
memory character search for c in p..p+n-1 addresss range |
size_t strlen(const char *str) | string length (without '\0') |
char *strcpy(char
*dest, const char *src) |
copy string src to dest |
char *strncpy(char
*dest, const char *src, size_t n) |
copy up to n characters from src to dest |
char *strcat(char
*str1, const char *str2) |
concatenate str1 and str2 and store in str1 |
char *strncat(char
*str1, const char *str2, size_t n) |
concatenate str1 and up to n characters from str2 and store in str1 |
int strcmp(const
char *str1, const char *str2) |
compare str1 and str2 strings |
int strncmp(const
char *str1, const char *str2, size_t n) |
compares up to n characters of str1 and str2 strings |
char *strchr(const
char *str, int c) |
look for first char c in str |
char *strrchr(const
char *str, int c) |
look for last char c in str |
size_t strspn(const char
*str1, const char *str2) |
find the intersection string of str1 and str2 |
size_t strcspn(const
char *str1, const char *str2) |
find the not intersection string of str1 and str2 |
char *strpbrk(const
char *str, const char *brk) |
search for the first occurrence in str of any character in brk |
char *strstr(const
char *str, const char *substr) |
search for the first occurrence in str of string substr |
char *strerror(int errnum) | get the error description for the error number |
char *strtok(char
*str, const char *delimit) |
parse tokens from str delimited by delimit |
ctype.h |
|
Syntax | Description |
int isdigit(int c) | is digit |
int isalpha(int c) | is letter |
int isalnum(int c) | is letter or digit |
int iscntrl(int c) | is control character |
int isgraph(int c) | is any character except space |
int isprint(int c) | is any character or space |
int ispunct(int c) | is punctuation character |
int isspace(int c) | is space (space/tab/CR/newline...) |
int isxdigit(int c) | is hex digit - a..f or A..F |
int islower(int c) | is lower case letter |
int isupper(int c) | is upper case letter |
int tolower(int c) | convert to lower case |
int toupper(int c) | convert to upper case |
math.h |
|
Syntax | Description |
double pow(double x, double y) | power: x y |
double sqrt(double x) | square root |
double log(double x) | natural logarithm: ln(x) |
double log10(double x) | base 10 logarithm: log10x |
double exp(double x) | exponent: ex |
double ldexp(double x, int exp) | return x*2exp |
double frexp(double x, int *exp) | converts x to frac*2(*exp) |
double modf(double x, double *intptr) | convert to integer and fraction |
double fmod(double x, double y) | reminder of x/y |
double floor(double x) | largest integer that is smaller than x |
double ceil(double x) | smallest integer that is greater than x |
double fabs(double x) | float absolute: |x| |
double sin(double x) | sine of angle [radian] |
double cos(double x) | cosine of angle [radian] |
double tan(double x) | tangent of angle [radian] |
double asin(double x) | arcsine |
double acos(double x) | arccosine |
double atan(double x) | arctangent |
double atan2(double y, double x) | arctangent of y/x |
double sinh(double x) | hyperbolic sine |
double cosh(double x) | hyperbolic cosine |
double tanh(double x) | hyperbolic tangent |
mode | description |
---|---|
"r" | open text file for reading |
"w" | open/create empty text file for writing |
"a" | open/create text file for writing from the end |
"r+" | open text file for reading and writing |
"w+" | open/create empty text file for reading and writing |
"a+" | open/create empty text file for reading and writing from the end |
"rb" | open binary file for reading |
"wb" | open/create empty binary file for writing |
"ab" | open/create binary file for writing from the end |
"r+b" | open binary file for reading and writing |
"w+b" | open/create empty binary file for reading and writing |
"a+b" | open/create empty binary file for reading and writing from the end |
%[flags][width][.percision][length]type
flag | description |
---|---|
- | align left |
+ | print sign |
0 | extra zeros padding |
space | print space before number, when no sign |
# | other format |
Minimal output characters width.
Set the number of digits after the decimal point for number print.
Set the maximum number of characters to be printed for a string print.
length | description |
---|---|
h | short / unsigned short |
l | long / unsigned long |
L | long double |
type | description | variable type | print format |
---|---|---|---|
c | unsigned character | unsigned char | c |
d i | signed decimal integer | int | [-]dddddd |
u | unsigned decimal integer | unsigned int | dddddd |
x | unsigned hexadecimal integer - lower case a..f | unsigned int | hhhhhh |
X | unsigned hexadecimal integer - upper case A..F | unsigned int | HHHHHH |
o | unsigned octal integer | unsigned int | oooooo |
f | floating point number | double | [-]ddd.ddd |
e | floating point number | double | [-]ddd.dddedd |
E | floating point number | double | [-]ddd.dddEdd |
g | minimal length format selection: %f or %e | double | |
G | minimal length format selection: %f or %E | double | |
p | address of pointer | void * | hhhhhhhh |
s | print string | char * | |
n | argument get the number of characters written by printf | int * | |
% | print % | % |
%[*][width][length]type
Suppress assignment. don't store the current input.
Minimal output characters width.
length | description |
---|---|
h | short / unsigned short |
l | long / unsigned long |
L | long double |
type | description | variable type | scan format |
---|---|---|---|
c | character | char * | c |
d | signed decimal integer | int * | [-]dddddd |
i | signed integer (dec/hex/oct) | int * | |
u | unsigned decimal integer | unsigned int * | dddddd |
x | unsigned hexadecimal integer | int * | hhhhhh |
o | octal integer | int * | oooooo |
f/e/E/g/G | floating point number | float * | [-]ddd.ddd [-]ddd.dddedd |
p | address of pointer | void * | hhhhhhhh |
s | get string | char * | |
[...] | get string until char not in set | char * | |
[^...] | get string until char in set | char * | |
n | argument get the number of characters read by scanf | int * | |
% | % no assignment occures |