c++为什么不能用汉字作为变量名?但是为什么却可以输出汉字?

如题所述

C++开发者是丹麦人,他自己的母语也不是英语,为了使它能普及化而且当时他也在美国生活和工作,必须把C++全部用英文,款且当年全世界开发一种新的编程语言都是用英文,大部分都是在美国开发的,当时好像有400多种语言了,已经是百家争鸣的战国时代了,所以用英文开发已经是一种标准了,至于不能汉化,是在设计之初的上个世纪80年代初期,那个时候欧美和中国接触少,根本没人会汉语,所以就没有支持汉语的变量名了函数名了。还有就是现在已经定义好了,如果要改还得必须找C++标准委员会,要知道他们都是老外,他们以全世界都使用英文为自豪,接收汉语是很难的,一个是瞧不起,没把中国人放在眼里,狠不得把中国人都西化了,没看到欧洲人每当占领一个地方就把当地人都西化了吗,最喜欢做的就是要同化别人,强制人家学他们的语言,强制人家必须信他们的信仰,怎么可能会通过在C++里把汉语变量名函数名放进去,不放进去每位学编程的中国人都必须学英语了。除非有一天垮了,感觉到就要垮了.

现在我们国家出来了个习语言,他虽然还在婴儿期,但是是百分百的中文编程,就像汉化版的C语言,还有个叫习佳佳,C++开发伴侣,它是和VS编译器一起使用的,能把普通的VS在开发C++的时候全部汉化,不需要安装,只要用VS找到习佳佳的路径就可以,它包括变量名,函数名。。。。。。。
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-12-27

有些编译器可以支持所有Unicode字符作为变量名,比如最新版本的Visual Studio,貌似从VS2008开始就支持了。比如你可以在Visual Studio里编写如下代码:

#include <iostream>
#include <stdlib.h>
#define 类 class
#define 返回 return
#define 公共 public
#define 私有 private
typedef int 整型;
typedef bool 布尔型;
typedef char 字符型;
typedef void 空;
类 盒子类
{
私有:
 整型 长;
 整型 宽;
 整型 高;
公共:
 盒子类(整型 长, 整型 宽, 整型 高) : 长(长), 宽(宽), 高(高)
 {}
 空 输出()
 {
  std::cout<<长<<','<<宽<<','<<高<<std::endl;
 }
};
整型 main()
{
 盒子类 啊(10,11,13);
 啊.输出();
 system("pause");
 返回 0;
}

第2个回答  2012-01-08
这是这个语言定义的时候规定的,就像是你不能用数字放在变量的开头一样
每种语言都有固定的编码,字符都在计算机本省的硬件里的ROM中存储着,只要用函数调用这些字符就可以输出了
第3个回答  2012-01-08
我也不是很懂,但好像这是规矩,没有规矩, 不成方圆吧。
C++是别人发明的,别人说不能用就不能用。
如果C++是你发明的就好了,你想怎整就怎整。本回答被提问者采纳
第4个回答  2012-01-08
为了节省存储空间,提高运算效率,最重要的一点C语言是来外发明设计出来的,他们不懂中文。

c++为什么不能用汉字作为变量名?但是为什么却可以输出汉字?
是在设计之初的上个世纪80年代初期,那个时候欧美和中国接触少,根本没人会汉语,所以就没有支持汉语的变量名了函数名了。还有就是现在已经定义好了,如果要改还得必须找C++标准委员会,要知道他们都是老外,他们以全世界都使用英文为自豪,接收汉语是很难的,一个是瞧不起,没把中国人放在眼里,狠不...

c++为什么不能用汉字作为变量名?但是为什么却可以输出汉字?
这是这个语言定义的时候规定的,就像是你不能用数字放在变量的开头一样 每种语言都有固定的编码,字符都在计算机本省的硬件里的ROM中存储着,只要用函数调用这些字符就可以输出了

c++变量可以是中文吗,我大一刚学c++,这个不是太懂
变量的命名是有命名规范的,必须是字母、数字、或下划线。不能为中文。并且第一个字符必须是字母或者是下划线。一般便于好记。都回用英文单词。也可以用拼音的,就看你的命名习惯了。也可以在后面加备注用双斜线 \/\/ 就可以了。

在VS C++中,变量名,函数名能否使用中文
版本较高的VS中,因为支持UNICODE文件编码,类名、函数名等理论上可以使用中文,但不推荐!因为你无法预知编译器解析可能产生的问题,以及代码文件的文本编码、C++标准的自适应等问题,可能造成编译或运行错误。在VC中,变量名、函数名、对象名,甚至文件名和路径都推荐使用英文。

c++ 支持中文变量名 中文类名吗
\/ C++ 标识符是用来标识变量、函数、类、模块,或任何其他用户自定义项目的名称。一个标识符以字母 A-Z 或 a-z 或下划线 _ 开始,后跟零个或多个字母、下划线和数字(0-9)。C++ 标识符内不允许出现标点字符,比如 @、& 和 %。C++ 是区分大小写的编程语言。因此,在 C++ 中,Manpower 和 ...

C语言能不能使用中文变量名啊?
C语言可以使用中文变量名。c语言变量名规则是:1、变量名以英文字母开头;2、变量名中的字母是区分大小写的;3、变量名不能是关键字;4、变量名中不能包含空格、标点符号和类型说明符。

C++函数名可用汉字
是可以的,c++是支持unicode的,因此可以用中文定义变量以及函数名等,不过作为一种好的编程习惯应该尽量避免这种做法。

为什么程序员不用中文来编程?
作为科班出身的码农来帮你解惑吧,其实根本没有英文编程还谈什么中文编程,事实上我们都是用C语言、C++语言,JAVA语言,Python语言编程,它们都有自己的语法,用的也不是英文语法。编程中用到的英文实际就是一些关键字(类名,函数名,变量名等),都是很简单的字符,其实跟自然语言关系不大,对机器而言...

在C++里,汉字算不算标识符
标识符只有由字母,数字,下划线组成,所以汉字不是,比如你定义的变量名就不能是汉字。

为什么程序员不能用中文来编程
而且表达一个变量几个字母缩写就可以了(英语实在太差的可以用汉语拼音缩写),这么一比用中文感觉实在太啰嗦。多说无用,来几张图用事实说话:发个图还得加水印,好麻烦,草草加上了事,其实应该加全部,现在个别区域没加上从图中可以看出我实在不想用中文了,循环里的变量名用的字母i,之前变量名就是用的中文,可见...

相似回答