我就先从这里给大家讲一下这个c/c++程序,先给大家讲一下我对c++的理解,c++其实就是c,不过是多了些功能的c而已。它不像java,c#跟c语言的隔离那么大,我个人觉得,如果用了c++的东西,那原本的c就升级成c++吧,两个区分开我打着累你看着也累。
如图,这个一个我们什么也没做也没动的自己生成出来的程序,如果此时点击本地windows调试器按钮,你会发现这个程序是可以运行的,因为什么都没有所以也就只是闪了一小下。
下面我们来一行行分析这个最最原始的c++程序。
首先是1-3行:你前面两行是绿色的,这里就是程序里常见的注释,注释就是表面的意思用来写注解用的,是用来提醒自己在这里都干了什么,很多时候注释更大的用法是用来去除无用的代码。你可以尝试去掉前面的//或者在后面几行代码前面加上//,你就明白什么是注释了。
然后是3-6行:这里其实只有一行有东西,其余的都是空白,空白的部分实际在程序运行的时候后背默认去除的。所以这里主要说明一下第4行,#include"stdafx.h"这里先不管双引号里面的东西,其实这是头文件的引用,那什么又是头文件呢?给大家稍微说一下我的理解,头文件就是别人写好的代码,你拿来用而已,但是用之前要告诉它你用哪一个。这就好比你要抄作业,班里有很多大神的作业,你要抄哪一个人的你总得告诉课代表那个人的名字吧。
最后是7-12行:这里一样,只有7-10行有东西,但是这是这个程序的关键,英文main(至于为什么要在前面加_t我也不知道)就是”主要”的意思,这个意思跟实际上的意思是一样的,我们的程序到最后都会有一个主入口,并且只有一个,至于入口开始干什么,就是这个_tmain大括号里面的东西,现在可以看到是空的什么都没有。
先说一下主函数:其实这个主入口是一个主函数,它的名字是早就被定好的,它也是一种函数而已,是不同的语言名字都不太一样。
再说一下函数:函数跟数学里的函数完全不一样,它更像是一种外包工作:
比如A公司给B公司外包一样工作,当B做完把东西给A公司就行了,这期间B干什么A可以完全不理会,也可以把B公司的人派遣到A公司内部做,做完了就放在那里走人。但是如果是第一种情况的话,A公司就必须告诉B公司你们最后给我的东西是什么样的,什么类型的,所以函数前面那个int就是干这个的,因为程序并没有那么智能,所以最初的A公司的外包很单一,就是程序里的变量,当然A公司后来发达了可以外包各种各样的工作,但是目前在主函数里就只有一样外包的东西那就变量,就是函数前面的int,这个int告诉主函数需要返回一个int的变量的最终产品。函数后面括号里面是A公司给B公司的素材,这些素材是B公司可能要用到的,但是一般用不到也不会给吧,毕竟浪费钱,代码里也是一样,素材也是有类型的,一般给的素材也都是变量,但是如果发达了的可以直接给高级的玩意。再往后面就是大阔号里面的东西,这里是函数里面一切处理流程,想干什么就干什么,反正最后把产品能做出来就行,第九行这个return 0就表明主函数返回给A公司一个类型为int的0。第二种情况后面见到再说,其实第二种情况也不重要,因为B公司返回一个0产品效果是一样的。
然后再说说变量:因为计算机里面的硬件有限,所以我们不能滥用,好比如果B公司需要的资金非常少,那就没必要从银行借那么多钱,而且你还需要告诉银行借美元还是人民币,但是B公司又不知道自己具体会用多少钱,所以就有一个区间,变量在计算机里就这干这个的,它能给你的资源只有你定义的那么多,比如int就是一个4字节的整形变量,就好比向银行借了4万元人民币,比如double是8个字节浮点数,就好比借了8万美元。就好比每家银行的利率不同实际上到底表示多少长度变量又具体的机器而定。但是我们大家用的电脑都是一般形式的长度,具体c++变量有多少种,长度多少自行百度吧
。