A comprehensive guide with curated recipes to help you gain a deeper understanding of modern C.
- Learn how to make your applications swift and robust by leveraging powerful features of C
- Understand the workings of arrays, strings, functions, and more down to how they operate in memory
- Master process synchronization during multi-tasking and server-client process communication
C is a high-level language that's popular among developers. It enables you to write drivers for different devices, access machine-level hardware, apply dynamic memory allocation, and much more. With self-contained tutorials, known as recipes, this book will guide you in dealing with C and its idiosyncrasies and help you benefit from its latest features.
Beginning with common tasks, each recipe addresses a specific problem followed by explaining the solution to get you acquainted with what goes on under the hood. You will explore core concepts of the programming language, including how to work with strings, pointers, and single and multi-dimensional arrays. You will also learn how to break a large application into small modules by creating functions, handling files, and using a database. Finally, the book will take you through advanced concepts such as concurrency and interprocess communication.
By the end of this book, you'll have a clear understanding and deeper knowledge of C programming, which will help you become a better developer.
What you will learn
- Manipulate single and multi-dimensional arrays
- Perform complex operations on strings
- Understand how to use pointers and memory optimally
- Discover how to use arrays, functions, and strings to make large applications
- Implement multitasking using threads and process synchronization
- Establish communication between two or more processes using different techniques
- Store simple text in files and store data in a database
Who this book is for
If you're a programmer with basic experience in C and want to leverage its features through modern programming practices, then this book is for you.
Table of Contents
- Working with Arrays
- Managing Strings
- Exploring Functions
- Deep Dive into Pointers
- File Handling
- Implementing Concurrency
- Networking and Inter-process communication
- Using MySQL Database
- Appendix A
- Appendix B
- Appendix C