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.最后重点是:多巧代码,自然就领悟其中奥妙了。


  • 最后有错请至指出,多指教
  • 后续会继续更新总结


  • 附上暂时的准备的总结目录
  1. C/C++常识概述

    • 程序与计算机语言
    • C/C++简介
    • C/C++异同
    • C/C++编译原理
  2. C/C++基础知识
    • C/C++基本格式说明
    • C/C++基本常识说明
  3. C/C++数据类型
    • 基本数据类型
    • 复合数据类型
  4. C/C++循环与分支语句
  5. C/C++函数
  6. C/C++对象和类
  7. C/C++友元
  8. C/C++代码重用
  9. C/C++string类和标准模版库
  10. C/C++文件输入输出

C/C++知识总结 一 C/C++常识概述的更多相关文章

  1. JAVA知识总结(一):概述

    第一次写文章,有点小紧张,不过没关系,因为我面对的都是小白.好了废话少说,直接开始吧. 我主要说一下JAVA的发展和开发java的基本知识及JAVA的主要特性. 一.JAVA的主要特性: 1. 一方面 ...

  2. Java基础知识强化82:Random类概述和方法使用

    1. Random类 public class Random extends Object implements Serializable: 此类的实例用于生成伪随机数流.此类使用48位种子. (1) ...

  3. 基础知识(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 体系 ...

  4. IC卡制作常识概述

    ic卡主要有9种:    1.接触型IC卡:    2.非接触型IC卡:    3.串行传输型IC卡:    4.并行传输型IC卡:    5.存储型IC卡:    6.智能型IC卡:    7.超级 ...

  5. ASP.NET Core 2.2 基础知识(十八) 托管和部署 概述

    为了方便演示,以 .NET Core 控制台应用程序讲解. 我们新建一个控制台应用程序,安装 "Newtonsoft.Json" Nuget 包,然后右键点击该项目,选择" ...

  6. 【论文小综】基于外部知识的VQA(视觉问答)

    ​ 我们生活在一个多模态的世界中.视觉的捕捉与理解,知识的学习与感知,语言的交流与表达,诸多方面的信息促进着我们对于世界的认知.作为多模态领域的一个典型场景,VQA旨在结合视觉的信息来回答所提出的问题 ...

  7. 知识图谱顶刊综述 - (2021年4月) A Survey on Knowledge Graphs: Representation, Acquisition, and Applications

    知识图谱综述(2021.4) 论文地址:A Survey on Knowledge Graphs: Representation, Acquisition, and Applications 目录 知 ...

  8. 【转】java NIO 相关知识

    原文地址:http://www.iteye.com/magazines/132-Java-NIO Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的 ...

  9. 网络知识杂谈 - https - 原理简述

    概述 简单描述 https 尽量介绍它的原理 实际的机制, 可能会更加复杂一些... 背景 这玩意, 困扰我好多年了 今天开始, 想做个了断 之前工作也接触过, 但从我的角度来说, 认识很浅 会配置 ...

随机推荐

  1. frida报错frida.InvalidArgumentError: device not found问题解决方案

    一.问题描述     python安装好frida框架后,在安卓端启动了frida-server,启动要hook的应用,在cmd中执行python脚本,报错frida.InvalidArgumentE ...

  2. python使用for循环打印9*9乘法表。

    代码如下: for a in range(1, 10): for b in range(1, 10): if b <= a: print("%d*%d=%d\t" % (b, ...

  3. 编写程序实现根据考试成绩将成绩分为A,B,C,D四档。

    score = float(input("请输入你的成绩:"))if 90 <= score <= 100: print("你的成绩为A档")eli ...

  4. 爬虫之requestsku

    想用selenium实现B站自动登录已经点赞等功能,看到如何解决滑动解锁有关爬虫的内容,便开始学习爬虫,没过多久又想把记录自己生活的网站做起来,朋友便推荐了layui框架倒腾了一晚上自我觉得是做后台系 ...

  5. svn更新时同步web服务器

    1.重中之重:第一次更新需要先把数据库先检索出来,执行脚本./post.commit #!/bin/sh export LANG=en_US.UTF-8 SVN=/usr/local/subversi ...

  6. Java对接百度智能云人脸识别

    ------------------------->这篇文章就是自己做个笔记<------------------------- 首先登录or注册自己的百度智能云管理中心:https:// ...

  7. 在Windows中像Linux里一样使用CMake和make

    1. 安装GCC环境 1.1 安装MinGW(Minimalist GNU for Windows) 首先下载MinGW,并安装.安装完成之后运行MinGW Installer.界面如下.勾选自己需要 ...

  8. 对tf.nn.softmax的理解

    对tf.nn.softmax的理解 转载自律者自由 最后发布于2018-10-31 16:39:40 阅读数 25096  收藏 展开 Softmax的含义:Softmax简单的说就是把一个N*1的向 ...

  9. 如何用 Blazor 实现 Ant Design 组件库

    本文主要分享我创建 Ant Design of Blazor 项目的心路历程,已经文末有一个 Blazor 线上分享预告. Blazor WebAssembly 来了! Blazor 这个新推出的前端 ...

  10. angular 中嵌套 iframe 报错

    错误如下 Error: unsafe value used in a resource URL context at DomSanitizationServiceImpl.sanitize... 解决 ...