C is widely used in many contexts. This training focusses on using C for scientific programming.
Learning outcomes
When you complete this training you will be able to
- read and understand well-written C code;
- write intermediate-level C programs;
- have a good starting point to familiarize yourself with the more sophisticated aspects of C;
- know about best practices and pitfalls for C programmers;
- have a working knowledge of the C standard Library;
- know how to use third-party libraries such as GSL for numerical computing.
Schedule
Total duration: 8 hours, split over two sessions.
Session one
Total duration: 4 hours
Subject | Duration |
---|---|
introduction and motivation | 5 min. |
basics: control flow statements, data types | 85 min. |
hands-on session | 20 min. |
coffee break | 10 min. |
functions | 15 min. |
simple I/O | 10 min. |
arrays and user defined types | 85 min. |
hands-on session | 20 min. |
Session two
Total duration: 4 hours
Subject | Duration |
---|---|
pointers & dynamic memory management | 80 min. |
hands-on session | 20 min. |
error handling | 10 min. |
coffee break | 10 min. |
using third-party libraries | 80 min. |
hands-on session | 20 min. |
wrap up | 10 min. |
Training materials
Slides are available in the GitHub repository, as well as example code and hands-on material.
Target audience
This training is for you if you need to use C as a programming language.
Prerequisites
You will need experience programming in another programming language, This is not a training that starts from scratch.
If you plan to do C programming in a Linux or HPC environment you should be familiar with these as well.
Trainer(s)
- Geert Jan Bex (geertjan.bex@uhasselt.be)