Effective C, 2nd Edition cover

Effective C, 2nd Edition

An Introduction to Professional C Programming
by Robert C. Seacord
September 2024, 312 pp.
ISBN-13: 
9781718504127

Download Chapter 2: Objects, Functions, and Types

Look Inside!

Effective C, 2nd Edition back cover
Effective C, 2nd Edition pages 78-79Effective C, 2nd Edition pages 196-197Effective C, 2nd Edition pages 256-257

The latest release of the C programming language, C23, enhances the safety, security, and usability of the language. This second edition of Effective C has been thoroughly updated to cover C23, offering a modern introduction to C that will teach you best practices for writing professional, effective, and secure programs that solve real-world problems.

Effective C is a true product of the C community. Robert C. Seacord, a long-standing member of the C standards committee with over 40 years of programming experience, developed the book in collaboration with other C experts, such as Clang’s lead maintainer Aaron Ballman and C project editor JeanHeyd Meneide. Thanks to the efforts of this expert group, you’ll learn how to:

  • Develop professional C code that is fast, robust, and secure
  • Use objects, functions, and types effectively
  • Safely and correctly use integers and floating-point types
  • Manage dynamic memory allocation 
  • Use strings and character types efficiently
  • Perform I/O operations using C standard streams and POSIX file descriptors 
  • Make effective use of C’s preprocessor
  • Debug, test, and analyze C programs 

The world runs on code written in C. Effective C will show you how to get the most out of the language and build robust programs that stand the test of time.

New to this edition: This edition has been extensively rewritten to align with modern C23 programming practices and leverage the latest C23 features.

Updated to cover C23

Author Bio 

Robert C. Seacord, a world-renowned C programmer and educator, is the convenor of the C standards committee. Seacord’s industry experience includes roles at IBM, the X Consortium, and currently Woven by Toyota. He was a researcher at Carnegie Mellon University’s Software Engineering Institute and professor at the Carnegie Mellon School of Computer Science, the Information Networking Institute, and the University of Pittsburgh. His previous books include The CERT® C Coding Standard and Secure Coding in C and C++.

Table of contents 

Foreword to the 2nd Edition by Ollie Whitehouse
Foreword by Pascal Cuoq
Acknowledgments
Introduction
Chapter 1: Getting Started with C
Chapter 2: Objects, Functions, and Types
Chapter 3: Arithmetic Types
Chapter 4: Expressions and Operators
Chapter 5: Control Flow
Chapter 6: Dynamically Allocated Memory
Chapter 7: Characters and Strings
Chapter 8: Input/Output
Chapter 9: Preprocessor
Chapter 10: Program Structure
Chapter 11: Debugging, Testing, and Analysis
Appendix: The Fifth Edition of the C Standard
References
Index

View the Copyright page
View the detailed Table of Contents
View the Index

Reviews 

"This is why you should program in C. Because other languages don’t open portals to hell.”
—Michał Zalewski, former CISO, Snap Inc., author of Silence on the Wire

Reviews from the 1st edition:

"This book's emphasis on the security aspects of C programming is unmatched. My personal recommendation is that, after reading it, you use all of the available tools it presents to avoid undefined behavior in the C programs you write."
—Pascal Cuoq, Chief Scientist, TrustInSoft

"This book contains a rich amount of quality information on the C language and programming. It’s clearly written, with good, pithy examples…an excellent book. Highly recommended."
—David Sullivan, ACCU's {CVU} Magazine

"An excellent introduction to Modern C."
—Francis Glassborow, ACCU

"A really, really good C book that does not talk down to you."
—Stephan Neuhaus, @stephanneuhaus1

"An updated and relevant version of what you may be coding. I'm a fan."
—Christoff Sogon, @sogonsec

Updates 

View the latest errata.