C语言中的声明与定义的区别

功能 声明(Declaration) 定义(Definition)
告知“有这个东西” ✅ 核心职责 ✅ 自带(包含声明)
绑定类型 ✅ 必须绑定 ✅ 必须绑定(和声明一致)
分配存储单元/实体 ❌ 不分配 ✅ 核心职责(变量给内存,函数给实现)

一句话记死:

  • 声明:报名字+定类型(让编译器认识它),不占内存;
  • 定义:报名字+定类型+给实体(让编译器找到它的存储/实现),占内存;
  • 两者都必须绑定类型,且类型要完全一致,定义是“声明+实体”的结合体。
posted @ 2025-11-16 10:33  wangya216  阅读(5)  评论(0)    收藏  举报