C and C++
Performance, memory safety, compilers and modern C++ in practice.
185 links, newest first.
- C and C++Post on X
Writing a Debugger From Scratch: An Eight-Part Series
The blog series covers building a debugger, from attaching to a process through handling source and symbols.
It offers a practical look at debugger internals relevant to C++ development.
- C and C++Paper
Agner Fog’s C++ Guide: Optimizing Memory Access
Agner Fog’s *Optimizing Software in C++* includes Chapter 9, “Optimizing Memory Access.” The post recommends the chapter.
It points engineers to a chapter focused on memory-access optimization in C++.
- C and C++Post on X
Reading Complex C Declarations with the Right-Left Rule
The post walks through `char (*(*x[3])(void))[5]` using the right-left rule: `x` is an array of three pointers to functions that return pointers to arrays of five `char`. It recommends Peter van der Linden’s *Expert C Programming*.
The rule offers a practical way to parse complex C declarations.
- C and C++Article
Branch Prediction Costs of Rarely Taken Conditions
A Cloudflare blog post examines the performance cost of `if` clauses that are rarely run, with benchmarks on x86 and M1.
It offers benchmarks to help engineers reason about branch prediction and conditional code performance.
- C and C++Article
C++ Annotations: A Broad C++ Reference
Frank B. Brokken’s C++ Annotations is a book covering a wide range of C++ topics. The post describes it as up to date and over 1,100 pages long.
A broad reference may help engineers find coverage of C++ topics in one place.
- C and C++Article
Linux Kernel Scheduler Documentation
The Linux kernel documentation describes the schedulers available in the kernel.
Useful background for engineers investigating process scheduling and system performance.
- C and C++Article
Practical Guide to Bare Metal C++
A guide to bare metal C++ by Alex Robenko.
It points engineers to a resource focused on bare metal C++.
- C and C++Article
A Practical Introduction to Compiling for ARM
Vladimir Keleshev’s book introduces compiler theory and assembly programming using a TypeScript subset that targets the 32-bit ARM instruction set.
It offers a practical way to learn compiler fundamentals and how generated code targets ARM.
- C and C++Repository
An Introduction to ARM64 Assembly Programming
A book by Prof. Perry Kivolowitz teaching assembly language programming for the ARM 64-bit ISA, with programming practices and code-development insights that also apply to higher-level languages.
Useful for engineers who want to understand ARM64 assembly and connect low-level programming practices to higher-level code.
- C and C++Article
More C++ Idioms: A Community-Maintained Reference
A Wikibooks reference collecting more than 80 community-maintained C++ design patterns.
It offers engineers a reference for exploring and comparing C++ design patterns.
- C and C++Article
Modern C++ Tutorial: C++11 to C++26
An open-access, free book by Ou Changkun covering modern C++ features from C++11 through C++26.
It offers engineers a tutorial for learning features across multiple modern C++ standards.
- C and C++Article
Beginner’s Guide to Linkers
A guide to linkers that explains what happens during the linking process.
Understanding linking helps engineers diagnose build and linker issues in C and C++.
- C and C++Article
C Array Types and Related Topics
An article discussing what the author finds unusual about C array types, what they would do differently, and related topics.
Useful for understanding the author’s perspective on C array types and their design.
- C and C++Article
Learn C++ tutorials organized by topic
LearnCpp offers free C++ tutorials. The post describes them as an introduction to C++ arranged categorically.
A categorized tutorial resource can help engineers structure their C++ learning.
- C and C++Article
An epoll use-after-free race and its RCU fix
The post describes an epoll use-after-free race in fs/eventpoll.c. Commit 07712db80857 changed kfree() to kfree_rcu() to defer freeing struct eventpoll until an RCU grace period.
It illustrates how RCU can address a use-after-free race in kernel code.
- C and C++Video
C++ Under the Hood: Internal Class Mechanisms
A talk by Chris Ryan about internal class mechanisms in C++. The post recommends it to people starting with C++ and says experienced developers may also learn something from it.
It may help developers explore how C++ classes work internally.
- C and C++Article
C Extensions, Portability, and Alternative Compilers
An article discusses C extensions, portability, and alternative compilers. Its preview notes that real-world C code often relies on non-standard behavior and language extensions.
Useful context for engineers assessing how compiler-specific features affect C portability.
- C and C++Post on X
Computing a Large Prime in LLVM IR
A video explores computing the largest possible prime within one second without precomputation, using LLVM IR and discussing sieves, number theory, and category theory.
It offers an example of using LLVM IR for a time-constrained computational problem.
- C and C++Video
Onur Mutlu on Cache Design and Tradeoffs
A YouTube video by Onur Mutlu titled “Cache Design, Management, and Tradeoffs.”
Cache design and management are relevant to understanding system performance.
- C and C++Post on X
Linux Device Drivers as an Introduction to Hardware I/O
The post recommends Linux Device Drivers for learning how the kernel communicates with hardware. It says readers should know some C and basic Unix syscalls.
It points C programmers to a resource for understanding kernel interaction with hardware.
Build with AgentLog
Send your own newsletter
CommsHarbor keeps contacts, consent and one-click unsubscribe together.
Free workspace
Open CommsHarbor


