Search topics...

C/C++ Programming & Low-Level Foundations

Core C/C++ programming skills and low-level concepts essential for embedded development

12 topics
Foundation skills — always tested in interviews
C/C++ Programming & Low-Level Foundations
foundational

Data Types & Memory Layout

C data types, memory sections (.text, .data, .bss, stack, heap), storage duration, fixed-width integers, and memory-aware programming for embedded systems.

c
memory
data-types
stack
+1
Interview Weight: 5/10
C/C++ Programming & Low-Level Foundations
foundational

Pointers, Arrays & Pointer Arithmetic

Pointer fundamentals, pointer arithmetic, array decay, void pointers, and common interview traps — the building blocks of every embedded C program.

c
pointers
arrays
memory
Interview Weight: 5/10
C/C++ Programming & Low-Level Foundations
foundational

volatile and const

Master the volatile and const type qualifiers — what the compiler does differently, hardware register access, ISR-shared variables, const with pointers, volatile const for read-only hardware, and MISRA C implications.

c
volatile
const
hardware
+1
Interview Weight: 5/10
C/C++ Programming & Low-Level Foundations
foundational

C++ Classes & OOP for Embedded

C++ classes in embedded systems — encapsulating hardware registers, constructors/destructors for init/deinit, inheritance for device hierarchies, the cost of virtual functions and vtables in ROM, CRTP as a zero-cost polymorphism alternative, and when to prefer composition over inheritance.

c++
oop
classes
embedded
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

C++ Embedded Constraints & STL

Navigate C++ in resource-constrained embedded systems — disabled exceptions and RTTI, heap-free programming, safe STL subsets, compiler flags, C/C++ interop with extern C, and industry guidelines (MISRA C++, AUTOSAR C++14).

c++
embedded
constraints
stl
+2
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Embedded C Code Patterns

State machines, ring buffers, bit manipulation, error handling, memory-mapped I/O, volatile-safe patterns, and guard clauses -- the embedded C patterns interviewers expect you to write from memory.

c
patterns
state-machines
ring-buffers
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Function Pointers & Callbacks

Function pointer syntax and typedef, callback patterns (event handlers, dispatch tables, state machines), qsort as a classic example, HAL abstraction via function pointers, vtable-style polymorphism in C, and safety considerations for embedded systems.

c
function-pointers
callbacks
dispatch-tables
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Memory Alignment & Endianness

Memory alignment rules, struct padding and reordering, endianness (big vs little), network byte order, byte swapping, and portable serialization for cross-architecture embedded systems.

c
alignment
endianness
memory
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

RAII & Smart Pointers

Master RAII (Resource Acquisition Is Initialization) and smart pointers for embedded C++ — deterministic cleanup, lock guards, DMA buffer ownership, unique_ptr with custom deleters, and heap-free RAII patterns.

c++
raii
smart-pointers
resource-management
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
foundational

Structs, Unions & Bitfields

Structure layout and padding, packed structs, unions for type punning and register overlays, bitfields for hardware register mapping, and portability pitfalls — all through the lens of embedded systems interviews.

c
structs
unions
bitfields
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Templates & Constexpr

Zero-cost abstractions with C++ templates and constexpr — compile-time register maps, type-safe units, static polymorphism via CRTP, constexpr lookup tables, and managing template bloat on flash-constrained MCUs.

c++
templates
constexpr
metaprogramming
+1
Interview Weight: 4/10
C/C++ Programming & Low-Level Foundations
intermediate

Inline Functions & Macros

#define macros (object-like, function-like, pitfalls), inline functions (type safety, debugging advantages), preprocessor directives (include guards, #pragma once, #ifdef), MISRA C guidelines, X-macros, and static inline for header-file functions.

c
macros
inline
preprocessor
+1
Interview Weight: 3/10