The « E301B Programmation C » activity, taught to students in third year of bachelor in electronics and in computer science engineering at the ECAM Brussels Engineering School (ECAM), is about C programming. In addition to the programming language, the course also presents how data are represented in the memory, the structure of a program in memory and some basic elements about system programming.

I started to give this course in 2017 and I am currently giving it for the third time. The course is taught in English, but all the material is available in English and in French.

Documents

Theory

Practice

Resources

Official book

  • Sébastien Combéfis. (to be published). Bases de la programmation et découverte du langage C. UKO Publication.

Reference books

  • Brian W. Kernighan. (1988). The C Programming Language (2nd edition). Prentice Hall. (ISBN: 978-0-131-10362-7)
  • Peter Fenwick. (2018). Introduction to Computer Data Representation. Bentham Science Publishers. (ISBN: 978-1-608-05883-9)

Other books

  • Mark Siegesmund. (2014). Embedded C Programming: Techniques and Applications of C and PIC MCUS. Newnes. (ISBN: 978-0-128-01314-4)
  • Steve Oualline. (1997). Practical C Programming (3rd edition). O'Reilly. (ISBN: 978-1-565-92306-5)
  • Stephen G. Kochan. (2014). Programming in C (4th edition). Addison-Wesley. (ISBN: 978-0-321-77641-9)

Scientific references

  • D. M. Ritchie, S. C. Johnson, M. E. Lesk and B. W. Kernighan. UNIX Time-Sharing System: The C Programming Language. In The Bell System Technical Journal, 57(6):1991-2019, 1978.
  • David Goldberg. What Every Computer Scientist Should Know About Floating-Point Arithmetic. In ACM Computing Surveys (CSUR), 23(1):5-48, 1991.

Online resources