Claude Code C conventions for module symbols and header guards
Use Puffin's C naming rules for files, functions, and macros, then verify the header guard.
中文Install in Claude Code
Use Claude Code in a local C project and choose a new module and header. Check existing naming conventions for public symbols and headers.
- Review `.claude/skills/coding-standard-c/SKILL.md` and its requirements at the pinned GitHub commit.
- Create `.claude/skills/coding-standard-c/` in your project and save the reviewed file as `.claude/skills/coding-standard-c/SKILL.md`.
- Start Claude Code from that project's root, then select `/coding-standard-c` in the slash menu.
Example task
Make a C module for trail labels. Declare and implement the formatter, add a guard, and include the header twice in a test source file.
`trail_label.c` · `trail_label.h` · `TRAIL_LABEL_H` · `trail_label_format()`What to check
`trail_label.h` uses `TRAIL_LABEL_H` and exposes `trail_label_format()`. The duplicate include compiles and links against the same implementation.
Original SKILL.md on GitHub · Updated
Frequently asked question
Do file-local static helpers also need the module prefix?
The source allows a clear snake_case name for static helpers. The prefix mainly identifies the public function's module.