C/C++语言的简单介绍

来源:互联网 发布:印第安人 知乎 编辑:程序博客网 时间:2024/06/05 12:10
怎么说呢,我是信安专业的,当然可能很少有人会说到“信安”这一专业,多数人所谈及的大都是关于“软件”的,
其实我们学校的计算机学院里分有四个专业,也就是软件、计科、网络和信安,虽然我不知晓这些都是从哪一年开始分

出来的,但我15年9月份来报道的时候已经是这样子了。


好了,似乎扯远了我们学校计算机的这四个专业,在大一、大二时候的学习安排是没多大区别的,也就是:
大一开始的时候,先是进行关于英语和数学的大类考试,然后给大家分出等级,接着选择A或B不同难度类型的相关课程。
所以想起点好一些的话,如果是将入大学的,我建议你高考后别在那两三个月的假期里把高中三年学过的东西都给丢了。。

现在想想虽然也没啥大不了的,但是起步真的很重要。真的,非常重要!


大一上学年,学校会强制性的帮你学好C语言的课了,关于C语言,百度百科是这么说的:
“C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生
少量的机器码以及不需要任何运行环境支持便能运行的编程语言。”

其实,我要告诉你的是,不管之前关于C你听说过什么,也不管你是不是零基础,我要告诉你的是,这是一门水课,是最
最基础的一门入门课程。说它“水”,不是指它很不起眼、很不重要,而是只它是一门一学就会的课程,只要你用心,只要
你会用到别人的代码的价值,并且能从中找到属于自己的。那你,就是在进步!相信我吧,自学,就是从模仿开始的,要学
会“抄”。

大一上就学了一门C语言,接着大一下学的是C++和Java,这时候学校也会开始安排物理大类课程的学习了。


C++呢,还是看百度百科(因为咱上不了维基百科呀):
“C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还
可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,
因而C++就适应的问题规模而论,大小由之。”

其实说到底,C和C++的差别就在“类”上,其他的都是大同小异,只不过是这个时候老师们会开始教授学生有关“标准库”
的相关知识,其实C也有,只不过C谈论的少,用到的库函数或数据结构也少(后者几乎没有),只是用到少数几个有关数学和
处理char型字符串的函数,其他的真没多少区别,都是形式上表现不同罢了。


C语言较之于C++呢,学习更加琐碎,繁且烦,这我也能理解,因为毕竟是打基础嘛。不过还有一点区别,C是一门强调过程
化的语言,看中实现细节;而C++(其实很多其他语言都是,Java也是)是一门基于对象的语言,这就是“类”的魅力所在了。
但由于在类的实现上往往是耗效率、开销不小的,所以在程序设计的比赛中我们都是不会设计什么类的,都是直接实现,甚
至连函数能少些一个就少些一个,因为调用函数也是一门有关程序运行开销的学问的。
但是老师上课呢,C++一开始(其实Java也是)都会重复学习一些C语言讲过的基础,其实我是这样猜的,任意一门编程语言的
基础内容都是大同小异的,都需要涉及以下基础:

关于第一个程序代码"Hello Wolrld!"的示例,,

然后是标识符、数据类型、运算符、语句和表达式、输入和输出、函数和简单的数据结构等等,就差不多了,就是这些基础
内容,而且“万家灯火都是一个样”,所以放心大胆的学习吧,少年!


对了,要相信我接着要说到的另外一句话,很多知识前辈们都帮我们总结好了,我们要在感谢他们的同时,充分的汲取他们
留下的知识给养,站在巨人的肩膀上,水准也就更高了,看到的风景也就别有洞天了。

所以我还要在此推荐几个网站,也就是能够供给大家养分的地方,呵呵。


当然首选的,是我们的老师经常在课堂上教授我们用到的,C++学习官网,然后就是其他一些分享技术和编程经验的,有很多,

但我经常使用的,一个是你现在所在的CSDN(其实这CSDN里边的内容真的是太过丰富了,只有你没想到的和还没找到的),

另一个是慕课网,当然了,如果你想深入学习算法知识,推荐看看ACM之家,还有其他一些关于ACM学习的网站,比如UVA、POJ

……

最后听我说一句,很多东西,“百度一下,你就知道了”。