返回顶部
C

C安全C编程

Write safe C avoiding memory corruption, buffer overflows, and undefined behavior traps.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
1,023
下载量
免费
免费
2
收藏
概述
安装方式
版本历史

C

快速参考

主题文件
malloc/free、内存泄漏、双重释放memory.md
空指针、悬空指针、指针运算
pointers.md | | 空终止符、缓冲区溢出 | strings.md | | 整数溢出、有符号/无符号 | types.md | | 宏陷阱、包含守卫 | preprocessor.md | | 常见未定义行为 | undefined.md |

关键规则

  • - malloc 返回 void — 在 C++ 中需要强制类型转换,在 C 中可选但需检查是否为 NULL
  • free(ptr); ptr = NULL; — 释放后始终置空,防止双重释放
  • 函数中的 sizeof(array) 返回指针大小而非数组大小 — 需单独传递长度
  • char str[5] = hello; — 没有空间存放空终止符,作为字符串使用时为未定义行为
  • strcpy 不检查边界 — 应使用 strncpy 并手动添加空终止符
  • 有符号整数溢出是未定义行为 — 编译器可能假设其不会发生而进行优化
  • i++ + i++ 是未定义行为 — 两次修改之间没有序列点
  • 返回指向局部变量的指针 — 产生悬空指针,使用时为未定义行为
  • #define SQUARE(x) xx — SQUARE(1+2) = 1+2*1+2 = 5,而非 9
  • 对重叠区域使用 memcpy — 应改用 memmove
  • 未初始化的变量 — 包含垃圾值,使用时为未定义行为
  • 数组越界 — 无运行时检查,导致静默数据损坏或崩溃

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 c-1776329261 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 c-1776329261 技能

通过命令行安装

skillhub install c-1776329261

下载

⬇ 下载 C v1.0.1(免费)

文件大小: 4.07 KB | 发布时间: 2026-4-17 16:15

v1.0.1 最新 2026-4-17 16:15
Initial release

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部