变量名定义:变量名由字母、数字、下划线组成,其中首个字符不能为数字。
原因一 词法分析说
因为每次输入“头符号”后要判断该符号是数字还是字符,如果是数字,则可以直接跳入数字处理的模块,若是字符则按变量名来处理。
如果允许变量名以数字开头,则以后每次输入一个符号都要做一次是否为数字的判断,直到符号出现非数字再转成变量名,
而禁止以数字开头只需要判断一次,很显然每一次都要判断是一种极大的浪费。
变量名以数字开头对程序员而言也没有任何的帮助,反而降低了编译器的性能,毕竟O(1)和O(n)还是差距不小的。
原因二 现有的数据无法区分
形如“1e5”,“100L”,“10f”这样的,应该识别为数字还是变量名呢?