当前位置:C++技术网 > 资讯 > C++语言零基础入门教程:1.2 C++语言是什么,什么是C++?

C++语言零基础入门教程:1.2 C++语言是什么,什么是C++?

更新时间:2015-09-12 22:20:41浏览次数:1+次

    上一节课,我们并没有直接介绍C++语言,只是介绍了什么是编程。如果你还没有看,请看《C++语言零基础入门教程:1.1 什么是编程,什么编写程序,什么是程序设计? 》。
    本节就正式介绍什么是C++语言。
    要介绍起编程语言,这是所有编程语言都要扯的一段话。我也不跟他们一样扯了,没意思。我用我的视角来讲讲,会让你更加理解的。
    上节课介绍了编程,编程的本质是什么,以及编程是做些什么事情。也提到了编程语言。要真正理解什么是编程语言,我们先来看看什么是语言。
    说到语言,你肯定都有点想笑,哈哈哈。呵呵,我先笑一个。对于英语,很多人都是硬伤,不多说了。幸运的是,我一次性过了四六级哦。小秀一把了。
    其实吧,我语言能力不强,甚至可以说,比很多优秀人的口才不知道差多少,要说写作,高二语文老师跟我说“你的作文很没有文采”,因为那个时候,我考到了全班第一。他儿子也在我们班,结果很汗颜的,或许他心里不甘心吧。就那么一点运气吧,换来这么一句话。不过我自己也知道,人贵有自知之明,我从来没有夸我文采有多好,其实挺差的。
    但是应试考试,其实并不需要你有太多的文采的。相反,那些大作家,文采飞扬,不一样考得好试。而我英语其实都是中等水平。说来说去,就是要说一点,为什么我文采不行,口才不行,为什么可以一次性过了四六级呢?其实这个得益于我自己一点自身优势,那就是逻辑性稍微强些,现在也不断的挖掘出来了,不过还不够。
    以前我一直以为,语言一定是要有很强的文采,说出来才有意思,不过后来发现,其实文字游戏玩的并不是文采 ,而是逻辑。比如法律,暂时性精神病,比如轮流性行为。不都是玩文字游戏么?其实对于语言来讲,主要目的不是风花雪夜的,当然不排除一些人拿语言去泡妞,去花言巧语。然而语言最根本的就是沟通,交流信息,完成逻辑。语言表达出你的需求,语言出来后,就是让你的观点想法表达出来,借以达到一定的目的,古代的“指鹿为马”就是一例。
    所以,希望你在真正认识编程语言的时候,对语言这个东西有一个理性的认识,而不要把语言当做是浪漫的代名词,不要把语言当做是感性的东西。其实语言是最理性的东西,所以,反而是逻辑性强的人,反而语言学的好。我来简单分析一下。
    我们就以英语来举例,其实一句话,就是主谓宾定状补。也就是说,由六大元素组成了所有的语句,也就是语言的根本。至于俗语,常用表达,实际上并不是语言的组成部分,那是“意淫”成分。因为去除这个成分,语言不会就不完整了。比如说,“很小的时候,菊花还是一种茶。。。”,这个表面的意思,你学过语文,你是知道的,但是内涵呢?没有点邪恶的人,哪会知道是什么意思呢?所以说这些是超越了语言的范畴了。
    其实,不只是英语,所有的人类语言,都可以提炼成主谓宾定状补。因为人的属性都一样,只是实行的方式不太一样,中国的汉语,美国的英语罢了。都是用来表达意图的工具,所以本质是一样的。既然提炼到这个地步,那么对于每一个句子都可以进行拆解和分析,那么这不就是我们学习的英语语法嘛。我对于这个基本语法,捏的比较准,对于阅读中的句子也就拿的比较好,而四六级的阅读理解又是重头戏,你说我想过,很难吗?虽然听力不太好,但是坑蒙拐骗,还是不会全军覆没的。这里算是一点英语经验吧。
    不过,你不要觉得上面都是扯淡哦。以上说的都是我们感触很多的人类语言哦。很多人还为了人类语言挂过不少东南枝哦。可能就是没有悟透其中的逻辑吧。很多人遇到语法拆解的时候,就蒙了。而我天生文采低劣,所以,倒是成全了这种考试模式。
    说完了人类语言,我们再看看编程语言。人类语言是和人打交道,人都可以理解的。当然有时候,某人也不能理解一些人说的话。比如说,东北人听不懂广东人说的白话。那我们人说的话,计算机很定也不懂了。你可以把计算机当做一个荒岛的原始人。人与计算机平等,都有自己的语言。如果计算机没有自己的语言,如何和其他计算机通信呢?这个和人类之间的语言是一个道理。
    而对于语言的组成,也都是有最基本的语言核心元素组成。不过我们这里不是谈论语言哲学的,不扯这么多。计算机世界里的计算机语言,只有计算机懂。我们一般的人,就不只所云了。计算机语言就是二进制的形式,例如10001010110010.你根本不知道这一句话是什么意思,而计算机知道。

    中文和英文的翻译
    中国人与美国人要是语言不通,怎么办,请翻译咯。翻译精通两种语言,就可以进行转换,而转换的标准,就是语言的逻辑性,可以对等转换,这就是语言翻译。哈哈哈,这些没有看过书,都是我们自己悟的哈,专业语言不要来找茬哈。

    彭丽媛出国随身翻译,保证语言沟通顺利
    那么我们人要让计算机做事,那么肯定也要跟计算机交流,而我们又不能直接说01010110,那么我们怎么办?找翻译咯,那翻译是谁?傻眼了吧,对不上号了吧。翻译就是程序员咯。程序员精通人类语言和计算机语言,所以,可以将人的想法根据语法规则,转换成计算机语言。那么这个人的想法,比如项目经理跟你说话,说的肯定是人话啦。这样你就知道项目经理的意思了,然后翻译,然后就转换成计算机语言咯。如果这样说你不容易理解,那举个小例子。经理说,如果每天要把“撸”这个动作做二十遍,如果成功了,就把结果打印出来,如果失败则关机。那么程序员接受到这个翻译任务后,就写一个循环,循环20次,然后用条件判断,如果成功就打印,如果不成功,就关机。这样就将一个人类的语言成功转成逻辑,然后就开始写代码,写的C++语言代码,然后编译生成了二进制的代码,那么这个二进制的代码,其实就是计算机的语言咯。这个二进制代码给计算机去识别,计算机就知道你跟它要“撸”20次。然后撸着撸着就挂了,然后自己强制关机了。
    这样讲,你是不是感觉和平时听到的那些不太一样呢。那么这就是计算机语言和人类语言的之间的千丝万缕,我们程序员只是一个人类与机器之间的语言翻译而已。
    到这里,我想大概C++语言是什么,大概有一点模糊的概念了吧。那再进一步说一下,让你更加清楚。
    最开始的时候,人类还真是天真,真的就直接用计算机语言与计算机交流,也就是用01010101这种方式与计算机交流,很是佩服。那时候写的程序就真是二进制程序。计算机非常乐意,这种方式计算机直接就理解了。在人与计算机之间,有程序员来做翻译。但是还有一个问题,就是国标语言和方言的问题。虽然英语翻译成中文了,但是农村里,没有上过学的,只会说方言,怎么办?那就是说还要一个二级翻译,把第一个翻译(将英语翻译成中文的人)的结果,就是翻译后的中文翻译为方言,这样农村的人就知道了。那么这个二级翻译,就精通中文和方言,就可以做到这个。
    同样,在人与计算机之间,也存在这种关系。程序员是第一级翻译,将人类语言翻译成了计算机的编程语言,也就是我们的C++语言(其他语言一样的意思),但是计算机是农村的,所以,他用的是方言,听不懂C++语言的意思,那么此时就需要一个既懂得计算机二进制语言和C++语言的二级翻译了。那么此时,C++编译器就担任此任务了。这就是C++编译器的来源,当然其他语言,也是有对应的编译器的。
    C++语言,就是这样一个标准语言,就和汉语普通话一样,而二进制语言就和地方方言一样,人类的语言就和外语一样。整个过程就是两次翻译的过程。这样才能达到间接交流。而程序员,就是一个一级翻译。那么我们学编程,其实不就是学习做一个计算机翻译员么?不然你以为是什么。有时候,以为程序员是计算机的统治者,实际上不准确,在这种角度上,可以更准确的理解。真正统治计算机的是操作系统,我们不过就是翻译而已。
    当然,这些只是为了让你充分的对比,从最熟悉的人类语言来深入理解计算机语言的含义而已,千万不要对此深入钻研和找茬。我不是语言专家,只是对比分析而已哈。
    如果到这里,你还没有搞清楚C++语言是什么,来找我吧,我保证不打死你,哈哈哈,开玩笑的。有什么问题,尽管在文章后面提问。至于C++能做什么之类的,后面都会为你讲解的,而且讲解都很深入独特的哦。

    对于参与本课程的学徒们,我会重点解答你们的问题疑问,请在文章后面留言,我会及时回复你们的。