C/C++知识总结 一 C/C++常识概述
C/C++常识概述
- 程序与计算机语言
- C/C++简介与发展
- C/C++异同
- C/C++编译特点
- 学习编程建议
程序与计算机语言
程序:是一组计算机能识别和执行、预先编好的一些指令操作合集。
计算机语言:计算机和人都可以识别的语言(机器并不能直接识别高级语言需要经过“翻译”成二进制格式的语言才可以识别)。
发展:计算机语言经历了从低级语言(机器语言)-(符号语言)——>最后到高级语言(如C/C++),低级语言人难以看懂、维护成本高;而高级语言则相对容易理解、更容易维护切容易上手。
C/C++语言的异同
编程方式的转变:早期为非结构化语言,但是风格随意、难以阅读、难以维护——>随后为结构化编程(如C语言),它提供了基本结构,以及要求,程序不许随意跳转,必须从上到下执行,这种结构更易读、维护,但由于C语言数据与算法分离使得在进行规模较大的程序是难以维护;再后来发展为面向对象编程(如C++)编程对象不再是一个个分割的小模块,而一个又一个的类(是把把一类的数据与算法分隔开),编写一个又一个类去解决问题,相对C语言在大型项目更容易维护。
异同:结构化编程是把数据与算法分隔开,而面向对象编程则是把一类相似的事物加以抽象,提取出其中的数据属性和事物所能完成的数据操作(方法),并把它们封装放入类中,但需要使用的时候只需把类实力化出对象。
C/C++语言编译特点
C语言编译特点:用途广、功能强、简介灵活。
数据类型丰富(基本类型:有整形、浮点型、字符型、符合类型:数组类型、指针类型、结构、共用体类型)
结构控制语句灵活(while,do while,for(),if()else,swith 语句,continue,break, ?:等)
自带高效标准库函数——STL
C++语言特点:兼容C语言的所有特点,扩展类的的功能(类继承、友元函数、虚函数),增强代码重用(提供模版函数、模版类)
学习编程建议
对于新生而言:
1.编程学习不必花许多精力,去搞懂每个细节,只需弄懂大体内容,随着学习的深入有些问题自然而然的就明白了。
2.最好看完编程视频,再去看书,这样学的快还容易理解。
3.最后重点是:多巧代码,自然就领悟其中奥妙了。
- 最后有错请至指出,多指教
- 后续会继续更新总结
- 附上暂时的准备的总结目录
- C/C++常识概述
- 程序与计算机语言
- C/C++简介
- C/C++异同
- C/C++编译原理
- C/C++基础知识
- C/C++基本格式说明
- C/C++基本常识说明
- C/C++数据类型
- 基本数据类型
- 复合数据类型
- C/C++循环与分支语句
- C/C++函数
- C/C++对象和类
- C/C++友元
- C/C++代码重用
- C/C++string类和标准模版库
- C/C++文件输入输出
C/C++知识总结 一 C/C++常识概述的更多相关文章
- JAVA知识总结(一):概述
第一次写文章,有点小紧张,不过没关系,因为我面对的都是小白.好了废话少说,直接开始吧. 我主要说一下JAVA的发展和开发java的基本知识及JAVA的主要特性. 一.JAVA的主要特性: 1. 一方面 ...
- Java基础知识强化82:Random类概述和方法使用
1. Random类 public class Random extends Object implements Serializable: 此类的实例用于生成伪随机数流.此类使用48位种子. (1) ...
- 基础知识(1)- Java程序设计概述
1.1 Java程序设计平台 1.2 Java“白皮书”的关键术语 1.2.1 简单性 1.2.2 面向对象 1.2.3 网络技能 1.2.4 健壮性 1.2.5 安全性 1.2.6 体系 ...
- IC卡制作常识概述
ic卡主要有9种: 1.接触型IC卡: 2.非接触型IC卡: 3.串行传输型IC卡: 4.并行传输型IC卡: 5.存储型IC卡: 6.智能型IC卡: 7.超级 ...
- ASP.NET Core 2.2 基础知识(十八) 托管和部署 概述
为了方便演示,以 .NET Core 控制台应用程序讲解. 我们新建一个控制台应用程序,安装 "Newtonsoft.Json" Nuget 包,然后右键点击该项目,选择" ...
- 【论文小综】基于外部知识的VQA(视觉问答)
我们生活在一个多模态的世界中.视觉的捕捉与理解,知识的学习与感知,语言的交流与表达,诸多方面的信息促进着我们对于世界的认知.作为多模态领域的一个典型场景,VQA旨在结合视觉的信息来回答所提出的问题 ...
- 知识图谱顶刊综述 - (2021年4月) A Survey on Knowledge Graphs: Representation, Acquisition, and Applications
知识图谱综述(2021.4) 论文地址:A Survey on Knowledge Graphs: Representation, Acquisition, and Applications 目录 知 ...
- 【转】java NIO 相关知识
原文地址:http://www.iteye.com/magazines/132-Java-NIO Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的 ...
- 网络知识杂谈 - https - 原理简述
概述 简单描述 https 尽量介绍它的原理 实际的机制, 可能会更加复杂一些... 背景 这玩意, 困扰我好多年了 今天开始, 想做个了断 之前工作也接触过, 但从我的角度来说, 认识很浅 会配置 ...
随机推荐
- .NET微服务从0到1:服务注册与发现(Consul)
目录 Consul搭建 基于Docker搭建Consul 基于Windows搭建Consul ServiceA集成Consul做服务注册 Ocelot集成Consul做服务发现 更多参考 Consul ...
- 最新版jdk 13环境变量配置
1.配置环境变量 右击“我的电脑”-->"属性"-->"高级系统设置"-->"高级"-->"环境变量&qu ...
- 面试被问分布式事务(2PC、3PC、TCC),这样解释没毛病!
整理了一些Java方面的架构.面试资料(微服务.集群.分布式.中间件等),有需要的小伙伴可以关注公众号[程序员内点事],无套路自行领取 更多优选 一口气说出 9种 分布式ID生成方式,面试官有点懵了 ...
- 怎么查看linux文件夹下有多少个文件(mac同样)
查看目录下有多少个文件及文件夹,在终端输入 ls | wc -w 查看目录下有多少个文件,在终端输入 ls | wc -c 查看文件夹下有多少个文件,多少个子目录,在终端输入 ls -l |wc -l ...
- MATLAB神经网络(2) BP神经网络的非线性系统建模——非线性函数拟合
2.1 案例背景 在工程应用中经常会遇到一些复杂的非线性系统,这些系统状态方程复杂,难以用数学方法准确建模.在这种情况下,可以建立BP神经网络表达这些非线性系统.该方法把未知系统看成是一个黑箱,首先用 ...
- 系统之眼!Linux系统性能监控工具Glances
一.Glances介绍 glances是一个基于python语言开发,可以为linux或者UNIX性能提供监视和分析性能数据的功能.glances在用户的终端上显示重要的系统信息,并动态的进行更新,让 ...
- (转)const的内部链接属性(C++中适用)
转载自:http://xiangwangfeng.com/2011/05/02/const%E7%9A%84%E5%86%85%E9%83%A8%E9%93%BE%E6%8E%A5%E5%B1%9E% ...
- Layui select下拉框改变之 change 监听事件(转)
在layui中使用 jquery 触发select 的 change事件无效 使用layui.use监听select事件 <select lay-filter="demo" ...
- ASP.NET页面使用AjaxPro2完成JS调用后台方法
一.首先下载AjaxPro.2.dll(附下载地址) 百度网盘链接:https://pan.baidu.com/s/1r87DE1Tza9F4NbJwTCS1AQ 提取码:10p6 二.在Visual ...
- MVVM相关框架
Caliburn.Micro PropertyChanged.Fody Prism MVVMLight (未完)