花了一周时间简单入门了一下cpp
因为学业关系,大一上学期应该没时间再去看cpp了
(本blog涉及的所有代码均使用伪代码表示)
个人感受:极其灵活,Python格式固定傻瓜式书写代码;cpp格式多种多样,写之前还需要考虑一下选择哪种方式;光是分支就有5种方式。
还有goto这种神奇的语句(一个goto几个if就能自造一个循环),指针更是灵活。
在翁恺的入门教程里部分没提到的东西和我自己想到的一些东西简单整理了一下
1.main到底是什么函数?
我自己的一个想法是,为什么需要这个main。
为什么我把这个main改一个名字就不行了。
因为main是一个入口函数,作为一个输入输出的入口,是函数中比较特别的函数。
具体原因是什么,没有深入了解
2.goto和if自己造一个循环
直接上代码,
While:
if 语句a{
语句b;
goto While;
}
这种是while形式的
While:
if 如果是第一次运行这个循环体
语句a;
if 语句b{
语句c;
goto While;
这种是do-while形式的
goto可以表达循环,可以表达分支
当然上面只是在整活,如果不是跳出某个语句块的话一般是不会用的
3.利用逻辑短路写if语句
a||b(当a不成立时执行b)
或者用
a&&b(当a成立时执行b)
看上去更简单,但当别人看代码时,冷不丁地冒出了这行代码,看的人需要花更多时间来看懂这行代码,
当然,我自己觉得这种表达挺方便的。
我在短的if语句没有else中使用这种,在短的if语句有else时会使用?来表达。
如果有嵌套会使用比较规整的来表达
4.运算上和Python的不同。
最直接的体现就是除法同时表达了整除和实除
这种原因来自于C对变量各种类型的规范
运算时它首先需要看运算符两边的数据类型,然后再去运算
5.作为强变量语言,数据类型很是规范
如果在Python习惯了直接输入值,那么在C上面会觉得很繁琐。
如果输入输出或者是进行运算,数据类型稍不留意可能就会“暴毙”
(不会报错,所以很麻烦)
另外更需要考虑数据范围。我注意到了一件事,数据范围小的数很快(2s)就编译完了,数据范围大的要编译很久(4s)。
6.头文件是什么?
简单来说,相当于Python的引入模块