Mini Map
Log In
Learn C Fundamentals
0%
1.
Introduction to C Programming
Getting Started with C
Virtues and Challenges
When Should I Use C?
The Bottom Line
2.
Data Types in C
First Steps
Variables
Data Types and Sizes
Declarations
Constants
Statements and Scope
Quiz on Basic Types and Statements
3.
C Operators and C Expressions
Building Expressions Using Operators
Type Conversions
Defining Your Own Type Names
Other Convenient Operators
Exercises on Operators and Expression
Quiz on Operators and Expressions
4.
Control Flow in C
The for Loop
Other Types of Loops in C
Conditionals
The break and continue Statements
A switch Statement
Exercises on Control Flow
Quiz on Control Flow
5.
Functions in C
Rationale
Defining a Function
Input Arguments
Returning Values
Argument Checking
Variable Scope
Automatic vs. Static Variables
Variadic Functions
Exercises on Functions
Quiz on Functions
6.
Complex Data Types
Arrays
Writing to Arrays
Multidimensional Arrays
Variable Length Arrays
Command-Line Arguments
Structures
Exercises on Complex Data Types
Quiz on Complex Data Types
7.
Stack vs. Heap
The Stack
The Heap
Code Examples
Stack vs. Heap
Quiz on Stack and Heap Memories
8.
Pointers in C
Pointers
Pointers and Arrays
Passing Pointers to Struct
Passing Pointers to Functions
Dynamically Allocated Memory
Exercise on Pointers
Quiz on Pointers
9.
C String
Strings
String Handling Using the C Standard Library
Arrays of Strings
Exercise on Strings
Quiz on Strings
10.
Input and Output Stream
I/O Streams
Input and Output with Files
Binary Files (Raw Bytes)
Random Access
Exercise on Input and Output
Quiz on Input and Output
11.
Macros and the C Preprocessor
The C Preprocessor and #define Directives
Macros with Arguments
Conditional Compilation
Quiz on Macros and the C Preprocessor
12.
Header Files, Compiling, and Linking
Splitting a Program into Multiple Files
The GNU make Utility and Makefiles
Quiz on Header Files, Compiling, and Linking
Project
Premium
Write a Shell in C
13.
C Debugger
The GNU Project Debugger (GDB)
Breakpoint
Mistakes
Tricky Code
Quiz on Debugging
14.
Code Profiling
Profiling of Code Using gprof
Known Slugs
Using the Compiler Optimizer Flags
15.
Parallel Programming in C
Why Parallel Programming?
Kinds of Parallel Programming
POSIX Threads
OpenMP
Message Passing Interface (MPI)
Quiz on Parallel Programming in C
Mini Project
Premium
Project: Using a Bootstrapped t-test
16.
Conclusion
Concluding Thoughts
17.
Miscellaneous
Some Useful C Libraries
18.
Appendix: Setting Up the Environment
Install Some Basic Tool
Test Your Environment
Learn C Fundamentals
/
...
/
Quiz on Operators and Expressions
Quiz on Operators and Expressions
Test your understanding of operators and expressions in C.
We'll cover the following...