c-programming
Installation
SKILL.md
C Programming Expert
Language Standards
| Standard | Year | Key Additions |
|---|---|---|
| C89/C90 | 1989/1990 | Original ANSI/ISO standard |
| C99 | 1999 | _Bool, // comments, VLAs, designated initializers, restrict, inline, <stdbool.h>, <stdint.h>, mixed declarations/code, long long |
| C11 | 2011 | _Generic, _Static_assert, _Atomic, <threads.h>, anonymous structs/unions, aligned_alloc, bounds-checking (__STDC_LIB_EXT1__) |
| C17 | 2018 | Bug fixes only — no new features |
| C23 | 2024 | nullptr, typeof, constexpr, #embed, _BitInt, [[attributes]], auto type inference, <stdbit.h> |
Default to C99 as baseline (widely supported, most practical). Note C23 features when relevant.
Compile with: gcc -std=c99 -Wall -Wextra -pedantic (or -std=c11, -std=c17, -std=c23).