news 2026/4/2 17:11:30

C语言标识符与命名规则

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C语言标识符与命名规则

C 语言里的 “标识符”,说白了就是给变量、函数、数组、宏这些东西起的 “名字”—— 比如你定义一个变量存年龄,写int age;,这里的age就是标识符。但起名字不能瞎起,得按规矩来,不然编译器不认,还会报错。

一、核心规则(必须遵守,错了就报错)

  1. 只能用这几类字符标识符由「字母(a-z/A-Z)、数字(0-9)、下划线(_)」组成,别的字符(比如¥、%、@、空格)都不能用。✅ 正确例子:stu_namenum123_score❌ 错误例子:stu-name(有减号)、123num(数字开头)、a#b(有 #)

  2. 不能以数字开头可以字母或下划线开头,数字只能跟在后面。✅ 正确:age18_total❌ 错误:18age2025_score

  3. 区分大小写C 语言是 “大小写敏感” 的,比如Ageage是两个完全不同的标识符,SUMsum也不一样。

  4. 不能用关键字当标识符关键字是 C 语言 “预留的专用名字”(比如intifforwhilereturn),这些词有固定含义,绝对不能拿来当变量 / 函数名。❌ 错误例子:int int;(把关键字int当变量名)、float for;(把for当变量名)✨ 小技巧:记不住关键字?不用死背,编译器会标红报错,看到红的就换个名字。

二、命名规范(建议遵守,代码更易读)

这些不是强制规则,但写代码时遵守,自己和别人看代码都不费劲,也是行业通用习惯:

  1. 见名知意别起abx这种没意义的名字,要能从名字看出用途。✅ 好例子:student_id(学生 ID)、total_score(总分)、get_max()(获取最大值的函数)❌ 差例子:x(谁知道 x 存的是啥?)、f1(f1 是函数还是变量?)

  2. 常用命名风格(二选一,保持统一)

    • 下划线命名法(最常用):单词之间用下划线分隔,全小写,适合变量、函数。例子:user_namecalc_average()book_price
    • 驼峰命名法:第一个单词小写,后面单词首字母大写,部分场景用(比如自定义函数)。例子:userNamecalcAverage()
  3. 避免过长名字能说明意思就行,别搞几十字符的超长名,比如the_total_score_of_all_students_in_class_3,又长又难打,简化成class3_total_score就够了。

  4. 特殊场景约定

    • 下划线开头的标识符:一般用于全局变量或宏(比如_GLOBAL_NUM),普通局部变量尽量别用,避免和系统定义的标识符冲突;
    • 全大写 + 下划线:通常用于宏定义(比如#define MAX_SCORE 100),一眼就能看出是宏。

三、常见错误案例(避坑!)

错误标识符错误原因修正后
123abc数字开头abc123
abc-def含非法字符(减号)abc_def
float用关键字当名字float_num
stu name含空格stu_name
$money含非法字符($)money

一句话总结

标识符命名:「字符只认字母 / 数字 / 下划线,不能数字开头、不能用关键字、大小写要分清」;额外记个小原则 —— 见名知意、风格统一,代码就不会乱糟糟!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/30 19:20:30

WeiboSpider:高效微博数据抓取与分析利器

WeiboSpider:高效微博数据抓取与分析利器 【免费下载链接】weibospider 项目地址: https://gitcode.com/gh_mirrors/weib/WeiboSpider WeiboSpider是一款专业的微博数据抓取工具,为社交媒体分析提供强大支持。无论您是市场研究人员、学术学者还是…

作者头像 李华
网站建设 2026/3/23 21:57:45

超越`fit`与`predict`:深度解构Scikit-learn的API设计哲学与高级实践

好的,收到您的需求。结合“Scikit-learn模型API”这一选题、1766973600072的随机种子,以及您对深度、新颖性和结构的要求,我将为您撰写一篇深入探讨Scikit-learn API设计哲学、高级应用模式与定制化扩展的技术文章。 超越fit与predict&#x…

作者头像 李华
网站建设 2026/4/2 14:12:45

快速理解IAR在工业控制系统中的安装流程

从零搭建工业级嵌入式开发环境:IAR安装实战全解析 你有没有遇到过这样的情况?刚接手一个基于STM32的PLC项目,兴冲冲地打开电脑准备写代码,结果发现编译器报错“Target not supported”,调试器连不上,甚至连…

作者头像 李华
网站建设 2026/3/28 14:22:10

5分钟快速上手VGGSfM:从零开始实现三维场景重建

5分钟快速上手VGGSfM:从零开始实现三维场景重建 【免费下载链接】vggsfm [CVPR 2024 Highlight] VGGSfM Visual Geometry Grounded Deep Structure From Motion 项目地址: https://gitcode.com/gh_mirrors/vg/vggsfm VGGSfM(Visual Geometry Grou…

作者头像 李华
网站建设 2026/4/2 16:24:26

微博数据采集终极指南:WeiboSpider完整实战教程

微博数据采集终极指南:WeiboSpider完整实战教程 【免费下载链接】weibospider 项目地址: https://gitcode.com/gh_mirrors/weib/WeiboSpider 想要获取实时微博数据进行分析?WeiboSpider是一个功能强大的Python微博数据采集工具,能够帮…

作者头像 李华
网站建设 2026/3/28 21:41:30

Instagram私有API终极指南:从零开始构建自动化社交工具

Instagram私有API终极指南:从零开始构建自动化社交工具 【免费下载链接】instagram-private-api NodeJS Instagram private API SDK. Written in TypeScript. 项目地址: https://gitcode.com/gh_mirrors/in/instagram-private-api 你是否曾想过,为…

作者头像 李华