basic C knowledge