some tools for everyday use in C