English | 2020 | ISBN: 1838641108 | 677 Pages | True PDF, EPUB | 53 MB
A comprehensive guide with practical instructions on data structures, low level programming, high performance, networking, IoT and more to help you gain a deeper understanding of the latest standards (C11 and C18) in C programming
C is a popular programming language among developers because of its flexibility and versatility. It is used in a multitude of applications ranging from microcontrollers to operating systems. This book takes a pragmatic approach by providing you a number of tasks organized to understand the fundamentals as well as the complex C programming concepts.
This book covers all the important building blocks that C provides for making real-life applications. It starts with recipes of arrays, strings, user-defined functions and pre-processing directives. Once you are acquainted with basic features, you will gradually move on to learn pointers, file handling, concurrency, networking, and inter-process communication. The book then illustrates how searching is done and the data can be arranged using different sorting techniques followed by explaining the implementation of data structures like a stack, queue, etc. You will also learn interesting programming features such as using graphics for drawing and animation, use of general-purpose utilities, and so on. Finally, the book will take you through the advanced concepts such as low-level programming, embedded software, IoT, and security in coding, and techniques to improve the performance of code.
By the end of this book, you’ll have a clear understanding and deeper knowledge of C programming, which will help you to take your career to new heights.
What you will learn
- Discover how to use arrays, functions, and strings to make large applications
- Perform pre-processing and conditional compilation for efficient programming
- Understand how to use pointers and memory optimally
- Use general-purpose utilities and improve performance of the code
- Implement multitasking using threads and process synchronization
- Use low-level programming and inline assembly language
- Understand how to use graphics for animation
- How to apply security while developing C programs
- Establish communication between two or more processes using different techniques