Introduction
C is a widely used programming language across the world in all fields of computer sciences, electrical engineering and embedded device programming. This is an alternate course on the C language that focusses more heavily on pointers and how the computer understands a compiled program (though no actual assembly code will be shown).
The course is divided into three sections: basic topics, advanced topics and implementation. To understand basic topics, one can probably go through the other C programming course, whereas the advanced will focus on harder-to-understand problems and concepts, while implementation focusses on the uses of particular structures of a program. I heavily recommend that unless you have an understanding of terms relating to computer functioning at a low level, or are prepared to do research on this, then use the main Wikiversity course. Also use the main course if you just want to know how to use C, and not how C works. If you ever find a concept difficult, it is a good idea to read the main course page on it first.
Lessons
Basic
- Preparing to write C
- Introduction from main Wikiversity course
- Lesson 1: Variables Note: Wikiversity stops page creation due to "online shopping spam". I have no idea why considering nothing related to shopping is even mentioned. Maybe it's due to use of particular keywords relating to computer products too many times? I haven't a clue. It would be nice if an admin could allow page creation despite this - you can request the page contents from me at <thomasp990@icloud.com>.
- Lesson 2: Syntax
- Lesson 3: Basic types
- Lesson 4: Scope and control loops
- Lesson 5: Functions
- Lesson 6: The basic operators
- Lesson 7: The basic type specifiers
- Lesson 8: The basic type qualifiers
- Lesson 9: The basic storage-class modifiers
- Lesson 10: Basic arrays
- Lesson 11: (very) Basic pointers
- Lesson 12: C header files