Lucas | Why Learn C | E-Book | www.sack.de
E-Book

E-Book, Englisch, 404 Seiten, Web PDF

Reihe: Professional and Applied Computing (R0)

Lucas Why Learn C

Go Behind the Curtain of Modern Systems with C23
1. Auflage 2025
ISBN: 979-8-8688-1597-3
Verlag: APRESS
Format: PDF
Kopierschutz: 1 - PDF Watermark

Go Behind the Curtain of Modern Systems with C23

E-Book, Englisch, 404 Seiten, Web PDF

Reihe: Professional and Applied Computing (R0)

ISBN: 979-8-8688-1597-3
Verlag: APRESS
Format: PDF
Kopierschutz: 1 - PDF Watermark



Don’t count C out. The classic programming language remains the backbone of many modern software systems including operating systems, relational databases, libraries, embedded systems, and even the core components of other programming languages.

This book teaches C23 while also building a foundation that strengthens your programming skills regardless of what language you normally program in.  Starting with a tour of C, it highlights C’s core concepts using example programs to give you the flavor of C. Next, it covers the entire C23 language including topics not often covered elsewhere such as undefined behavior, assertions, atomic variables, lock-free programming, debugging, advanced use of the preprocessor using _Generic, and more. Finally, it gives extended examples of how features common in modern programming languages might be implemented—including lists, maps, dynamic dispatch, and exceptions.

This book includes many in-line notes containing commentary, explanations for why something is the way it is, historical context, best practices, and details often glossed over in modern languages. Additionally, it gives examples that evolve with the introduction of new language features.

What You Will Learn:

  • Write programs in C using the new features introduced in C23.
  • Explore advanced or obscure parts of C not explained well elsewhere, if at all.
  • See how strings, lists, maps, dynamic dispatch, and exceptions might be implemented from scratch to understand what’s really going on in whatever language you program in.

Who This Book is for:

Professional programmers, computer science instructors, students or experienced hobbyists who understand programming language concepts (variables, statements, loops, functions, arrays, classes, objects, etc.) and have basic familiarity with algorithm characterization given in “big O” notation.

Lucas Why Learn C jetzt bestellen!

Zielgruppe


Professional/practitioner


Autoren/Hrsg.


Weitere Infos & Material


Part 1. Learning C.- 1. A Tour of C.- 2. Comments, Names, and Types.- 3. Operators .- 4. Declarations.- 5. Statements.- 6. Arrays and Pointers.- 7. Enumerations.- 8. Preprocessor.- 9. Functions.- 10. Structures.- 11. Unions.- 12. Input, Output, and Files.- 13. Program Organization.- 14. Multithreading.- Part 2. Selected Topics.- 15. Undefined Behavior.- 16. Assertions.- 17. _Atomic.- 18. Debugging.- 19. Generic.- 20. setjmp and longjmp.- 21. restrict.- 22. volatile.- Part 3. Extended Examples.- 23. Strings.- 24. Lists.- 25. Maps.- 26. Dynamic Dispatch.- 27. Exceptions in C.- A. Standard Headers.- B. Standard Functions.- C23 Differences.


Paul J. Lucas started programming on Commodore PETs at his high school. Courtesy of his parents, the first computer he owned was an Apple ][plus that he programmed in BASIC, Pascal, Fortran, and 6502 Assembly. At some point, he upgraded to a Macintosh. During his undergraduate studies, he taught himself C. He’s been programming in C (on and off) ever since. He’s also programmed in Bash, Go, Java, Perl, and Python. Of all those, C and C++ are still his favorites.

            He started his career at AT&T Bell Labs in telephony, log file visualization, testing (the original C++ compiler), and wrote . He’s also worked at NASA Ames Research Center, various start-ups, and lastly at Splunk. He holds patents on data visualization class libraries, visual log file analysis, programming language type systems, skewing of scheduled search queries, and cache-aware searching. He developed open-source projects including CHSM, a finite state automata compiler and run-time system, used by both telecommunications companies and CERN for managing complex reactive systems; and maintains , the C and C++ gibberish-to-English translator.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.