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 尽量介绍它的原理 实际的机制, 可能会更加复杂一些... 背景 这玩意, 困扰我好多年了 今天开始, 想做个了断 之前工作也接触过, 但从我的角度来说, 认识很浅 会配置 ...
随机推荐
- Wireshark网络分析就这么简单——读书笔记
前言 什么是wireshark? wireshark可能是世界上最好的开源网络分析器,能在多个平台上(Linux.Mac和Windows)抓取和分析网络包 wireshark分析常见的协议,可以在学习 ...
- Flask css 无法实时更新
css代码改完了,但是查看网页源代码css的内容还是很久之前的,根本没有更新 解决方法: 1.浏览器缓存.使用ctrl+F5刷新一下页面 2. 3. from datetime import time ...
- Codeforces Round #295 (Div. 2) B. Two Buttons 520B
B. Two Buttons time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...
- docker 学习(四)
1.Dockerfile简介 1)什么是Dockerfile Dockerfile是一个包含用于组合映像的命令的文本文档.可以使用在命令行中调用任何命令. Docker通过读取Dockerfile中的 ...
- 适合MCU用的C语言快速互转HEX(16进制)和原始字符串/数组方法
缘由 这个起因是昨晚群里有人在讨论怎么把字符串转成HEX方法最佳,讨论到最后变成哪种方法效率最优了.毕竟这代码是要在MCU上面跑的,要同时考虑到时间和空间的最优解. 当然讨论的是有结果的,具体实现的方 ...
- position:absolute和width的关系
碰到如下问题: 如图,我设置了宽高和绝对定位 ,但实际上我图片显示宽度为0: 然后我就查了一下,发现是因为我设了公共img宽度有个max-width:100%:屏蔽掉就有正常宽了,这点暂时没明白为啥 ...
- 基于springcloud搭建项目-Hystrix篇(五)
1.概述 (1).首先要知道分布式系统面临的问题复杂分布式体系结构中应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免的失败 (2).服务雪崩 多个服务之间相互调用的时候,假设微服务A调用微服 ...
- 打开ElasticSearch、kibana、logstash的正确方式
作者:玩世不恭的Coder时间:2020-03-08说明:原创不易,本文为原创文章,未经允许不可转载,转载前请联系作者 打开ElasticSearch.kibana.logstash的正确方式 前言一 ...
- Python数据科学手册(2) NumPy入门
NumPy(Numerical Python 的简称)提供了高效存储和操作密集数据缓存的接口.在某些方面,NumPy 数组与 Python 内置的列表类型非常相似.但是随着数组在维度上变大,NumPy ...
- Spring教程检视阅读
Spring教程检视阅读 地址 可供参考的教程 <菜鸟学 SSH> <Spring Boot 那些事> <初识 Spring Security> <Sprin ...