Modern C Up and Running: A Programmer’s Guide to Finding Fluency and Bypassing the Quirks

Modern C Up and Running: A Programmer’s Guide to Finding Fluency and Bypassing the Quirks

English | 2022 | ISBN: 978-1484286753 | 378 Pages | PDF, EPUB | 10 MB

Learn how to program in modern C, from the basics through the advanced topics required for proficiency. This book is the fastest path to C fluency for anyone experienced in a general-purpose programming language. From start to finish, code examples highlight the idioms and best practices behind efficient, robust programs in a variety of areas.

The book opens with a thorough coverage of syntax, built-in data types and operations, and program structure. C has quirks and presents challenges, which are covered in detail. The coverage of advanced features is what sets this book apart from others. Among the advanced topics covered are floating-point representation in the IEEE 754 standard; embedded assembly language in C code for overflow detection; regular expressions, assertions, and internationalization; WebAssembly through C; and software libraries for C and other clients.

Memory efficiency and safety are the two major challenges in C programming, and you’ll explore these challenges through a series of C examples. Arrays and structures, which are the means to high-level data representation, are covered in connection with pointers, which provide efficiency. The book again uses code examples in covering networking and wire-level security; concurrency (multiprocessing and multithreading); instruction-level parallelism; and interprocess communication through shared memory and files, pipes, message queues, and signals.

Many books introduce C, but few also explain how to use it properly and optimally. Essential C does just that.

What You’ll Learn

  • Accelerate your path to C mastery with this book for experienced programmers
  • Refresh your approach to program structure and data types
  • Dive into aggregates and pointers using modern C language
  • Revisit storage classes and scope
  • Dive into concurrency (multiprocessing and multithreading) and instruction-level parallelism
  • Finish with regular expressions, assertions, signals, locales and more