Push the limits of what C - and you - can do, with this high-intensity guide to the most advanced capabilities of C
- Make the most of C's low-level control, flexibility, and high performance
- A comprehensive guide to C's most powerful and challenging features
- A thought-provoking guide packed with hands-on exercises and examples
There's a lot more to C than knowing the language syntax. The industry looks for developers with a rigorous, scientific understanding of the principles and practices. Extreme C will teach you to use C's advanced low-level power to write effective, efficient systems. This intensive, practical guide will help you become an expert C programmer.
Building on your existing C knowledge, you will master preprocessor directives, macros, conditional compilation, pointers, and much more. You will gain new insight into algorithm design, functions, and structures. You will discover how C helps you squeeze maximum performance out of critical, resource-constrained applications.
C still plays a critical role in 21st-century programming, remaining the core language for precision engineering, aviations, space research, and more. This book shows how C works with Unix, how to implement OO principles in C, and fully covers multi-processing.
In Extreme C, Amini encourages you to think, question, apply, and experiment for yourself. The book is essential for anybody who wants to take their C to the next level.
What you will learn
- Build advanced C knowledge on strong foundations, rooted in first principles
- Understand memory structures and compilation pipeline and how they work, and how to make most out of them
- Apply object-oriented design principles to your procedural C code
- Write low-level code that's close to the hardware and squeezes maximum performance out of a computer system
- Master concurrency, multithreading, multi-processing, and integration with other languages
- Unit Testing and debugging, build systems, and inter-process communication for C programming
Who this book is for
Extreme C is for C programmers who want to dig deep into the language and its capabilities. It will help you make the most of the low-level control C gives you.
Table of Contents
- Essential Features
- From Source to Binary
- Object Files
- Process Memory Structure
- Stack and Heap
- OOP and Encapsulation
- Composition and Aggregation
- Inheritance and Polymorphism
- Abstraction and OOP in C++
- Unix: History and Architecture
- System Calls and Kernels
- The Most Recent C
- Thread Execution
- Thread Synchronization
- Process Execution
- Process Synchronization
- Single-Host IPC and Sockets
- Socket Programming
- Integration with Other Languages
- Unit Testing and Debugging
- Build Systems