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 尽量介绍它的原理 实际的机制, 可能会更加复杂一些... 背景 这玩意, 困扰我好多年了 今天开始, 想做个了断 之前工作也接触过, 但从我的角度来说, 认识很浅 会配置 ...
随机推荐
- python之函数介绍
# 函数 # 什么是函数: 能完成特定功能的工具,在Python中表示能完成特定功能的代码块.(函数定义) # 为什么要用函数 :①函数可以重复调用出来,效率高,而且维护成本低 ②使程序结构看起来清晰 ...
- Centos 安装rabbitmq
此处是通过源码进行安装的rabbitmq,参考:http://www.cnblogs.com/huangxincheng/p/6006569.html 1.源码包下载 ① erlang : http: ...
- openwrt 外挂usb 网卡 RTL8188CU 及添加 RT5572 kernel支持
RT5572 原来叫 Ralink雷凌 现在被 MTK 收购了,淘宝上买的很便宜50块邮,2.4 5G 双频.在 win10 上插了试试,果然是支持 5G.这上面写着 飞荣 是什么牌子,有知道的和我说 ...
- mysql中实现更新数据+1,再次更新数据-1
$sql="update article set comment=comment^1 where a_id=2"; 这条语句你会发现当你更新comment字段时为1,再次更新时为0 ...
- Drf 序列化 ModelSerializer跨表取数据
1.对于OneToOne.Foreignkey.choices字段可以使用source取出相关信息: class CourseSerializer(serializers.ModelSerialize ...
- 使用twisted将mysql插入变成异步执行
python 异步MySQL存库 对于异步框架而言,这些延迟是无法接受的.因此, Twisted 提供了 twisted.enterprise.adbapi, 遵循DB-API 2.0协议的一个异 ...
- c strncpy 容易出错的地方
使用strncpy的是注意两点,目的是数组和目的是指针 .目的是数组: ] = "abcde"; // ] = "; strncpy(dest,src,N); dest[ ...
- 《ASP.NET Core 3框架揭秘》5折预售[发布试读章节]
<ASP.NET Core 3框架揭秘>于昨天在下午京东正式开始预售,并在半天之内销售近一千套.为了回馈读者,出版社与京东谈了一个5折的价格,这是一个连我都没有想到的价格,至少我写着几本书 ...
- 【Weiss】【第03章】练习3.22、3.23、3.24:无代码题,栈的思考题
[练习3.22] a.提出支持栈的Push和Pop操作以及第三种操作FindMin的数据结构,其中FindMin 返回该数据结构的最小元素,所有操作在最坏情况下的运行时间都是O(1). b.证明,如果 ...
- DOTNET CORE源码分析之IServiceProvider、ServiceProvider、IServiceProviderEngine、ServiceProviderEngine和ServiceProviderEngineScope
首先谈一下IServiceProvider IServiceProvider只提供给了一个根据类型获取对象的功能,试想一下IOC总得有一个找到对象,具体如下 public interface ISer ...