A comprehensive guide with practical instructions for learning data structures, low-level programming, high-performance computing, networking and IoT to help you understand the latest standards in C programming such as C11 and C18Key FeaturesTackle various challenges in C programming by making the most of its latest featuresUnderstand the workings of arrays, strings, functions, pointers, advanced data structures, and algorithmsBecome well-versed with process synchronization during multitasking and server-client process communicationBook DescriptionUsed in everything from microcontrollers to operating systems, C is a popular programming language among developers because of its flexibility and versatility.
This book helps you get hands-on with various tasks, covering the fundamental as well as complex C programming concepts that are essential for making real-life applications. You'll start with recipes for arrays, strings, user-defined functions, and pre-processing directives.
Once you're familiar with the basic features, you'll gradually move on to learning pointers, file handling, concurrency, networking, and inter-process communication (IPC).
The book then illustrates how to carry out searching and arrange data using different sorting techniques, before demonstrating the implementation of data structures such as stacks and queues.
Later, you'll learn interesting programming features such as using graphics for drawing and animation, and the application of general-purpose utilities.
Finally, the book will take you through advanced concepts such as low-level programming, embedded software, IoT, and security in coding, as well as techniques for improving code performance. By the end of this book, you'll have a clear understanding of C programming, and have the skills you need to develop robust apps. What you will learnDiscover how to use arrays, functions, and strings to make large applicationsPerform preprocessing and conditional compilation for efficient programmingUnderstand how to use pointers and memory optimallyUse general-purpose utilities and improve code performanceImplement multitasking using threads and process synchronizationUse low-level programming and the inline assembly languageUnderstand how to use graphics for animationGet to grips with applying security while developing C programsWho this book is forThis intermediate-level book is for developers who want to become better C programmers by learning its modern features and programming practices.
Familiarity with C programming is assumed to get the most out of this book.