你知道C语言为什么会有“_”(下划线)吗?

学过C语言的都知道,变量名只能由字母、数字、下划线组成,且只能以字母或者下划线开头。

学英语时我们都学过连字符(“-”),这个东东主要用来连接单词的。那么C语言为什么不直接

用连字符,而要改用下划线呢?

专门查了一下,找到了答案。

(截图自 https://en.wikipedia.org/wiki/Naming_convention_(programming) )

原来是因为“连字符”与“减号”都用同一个“-”表示,C语言已经用“-”表示了减号,故不能再放到变量名中

当连字符使用了,所以就用下划线替代了。

上面提到Lisp语言是可以用“-”的,是因为根据Lisp语法规则可以判定“-”表示的是减号还是连字符。

时间: 2024-11-04 11:06:43

你知道C语言为什么会有“_”(下划线)吗?的相关文章

golang _下划线占位符代替需要释放的资源的问题

golang中_有两种作用,一种用在import中,比如这样 import _ "github.com/go-sql-driver/mysql" 表示并不需要导入整个包,只是执行这个包里面所有的init函数.另一个作用就是作为变量的占位符,比如req, _ := http.NewRequest(....),这里http.NewRequest返回的是两个参数,但是如果我并不需要用到error参数时,就可以用_线代替. 但是这里就有一种特殊情况了,例如,response, err := C

python实现将字符串中以大写字母开头的单词前面添加“_”下划线

在工作中写测试用例代码生成的时候,函数命令考虑采用参数文件的名称来命名,但是发现文件命名是驼峰的写写法,所以想按照字符串中的大写字母做分割,每个单词前面添加下划线,主要考虑采用正则的模式来匹配,替换然后咋对字符串拼接下. case_name = "testAdvanceRepayRequest" re.sub("[A-Z]", lambda x: "_" + x.group(0).lower(), case_name) 原文地址:https://

fastjson简单使用demo,@JSONField注解属性字段上与set、get方法上。实体类toString(),实体类转json的区别;_下划线识别

一.demo代码 @JSONField注解属性字段上与set.get方法上.使用@Data注解(lombok插件安装最下方),对属性“笔名”[pseudonym]手动重写setter/getter方法 import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.annotation.JSONField; import lombok.Data; @Data

Oracle SQL语言之查询语句_超越OCP精通Oracle视频教程培训29

Oracle SQL语言之查询语句_超越OCP精通Oracle视频教程培训29 本课程介绍: Oracle视频教程,风哥本套oracle教程培训是<<Oracle数据库SQL语言实战培训教程>>的第4/5套:Oracle SQL语言之查询语句.主要学习Oracle数据库SQL查询限制排序.Oracle SQL联接查询.Oracle SQL子查询等. 视频学习地址: http://edu.51cto.com/course/course_id-8047.html Oracle SQL语

Oracle SQL语言之常用函数_超越OCP精通Oracle视频教程培训30

Oracle SQL语言之常用函数_超越OCP精通Oracle视频教程培训30 本课程介绍: Oracle视频教程,风哥本套oracle教程培训是<<Oracle数据库SQL语言实战培训教程>>的第5/5套:Oracle SQL语言之常用函数.主要学习Oracle数据库SQL聚合函数,分组函数,字符函数,转换函数,日期字符数字转换,日期函数,集合函数,分析函数等. Oracle SQL语言之常用函数,课程内容详细如下: 聚合函数-数据统计 分组函数-使用group by与havin

(读后摘抄)《计算机程序设计语言的发展》_王汝传

原文是<电子工程师>里的一篇文章,以下是部分内容摘抄 第三代计算机语言:   Fortran语言 当时主要是用于科学计算 ,它 与汇编语言助记符的本质区别是引入了变量的概 念.它奠定了程序设计语言名字的理论基础 ,同时引 入了表达式.语句和子程序等概念 ,也是高级程序设计语言的基础.因其高效 率与完善的输入输出功能而受到人们的欢迎 ,至今 在科学计算领域仍充满生命力. Algol语言 孕育了许多很有用的程序设计与程序设计语 言思想 ,如自由程序格式.保留字.数据类型.分程序 概念.子程序调用方

命名法:骆驼(Camel)、帕斯卡(pascal)、匈牙利(Hungarian)、下划线(_)

首先欢迎大家到来! 常用的命名法:骆驼(Camel).帕斯卡(pascal).匈牙利(Hungarian).下划线(_) 骆驼:是指混合使用大小写字母来构成变量和函数的名字 帕斯卡:与骆驼命名法类似只不过骆驼命名法是首字母小写,而帕斯卡命名法是首字母大写 匈牙利:其基本原则是,变量名=属性+类型+对象描述.其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分 下划线:下划线法是随着C语言的出现流行起来的,在UNIX/LIUNX这样的环境,以及GNU代码中使用非常普遍 总结:对于常

Swift - 使用下划线(_)来分隔数值中的数字

为了增强较大数值的可读性,Swift语言增加了下划线(_)来分隔数值中的数字. 不管是整数,还是浮点数,都可以使用下划线来分隔数字. 1 2 3 4 //数值可读性 let value1 = 10_000_000_000 let value2 = 1_000_000.000_000_1 var value3:Int = 1_0_0_0_1

关于 mvc 中 连字符 - 和下划线 _转换的问题。

[潜水]大崔||哈尔滨(759666247) 10:02:16 如图   C#不承认 "-"[知府]古道今-湖北\xig<[email protected]> 10:03:54 这个无解[潜水]大崔||哈尔滨(759666247) 10:04:03 [知府]古道今-湖北\xig<[email protected]> 10:04:03 除非你用html代码[知府]古道今-湖北\xig<[email protected]> 10:04:09 不然不支持[