如何优雅的学习计算机编程--C++

0.导入

如何优雅地学习计算机编程。我们得首先了解编程是什么?打个比方--写信.

大家都知道写信所用的语言双方都懂,这样的信才做到了信息交流,人和计算机也是如此人和计算机交流得用计算机听得懂的语言。

要想学习编程就要先从底层学起,下面有一幅图帮助大家了解计算机的构成。

1.CPU架构

我们先从计算机的大脑CPU开始,假设CPU是一块长方形,它里面包含着三个脑,在大脑的构造中,左脑更着重于数字运算,右脑着重于语言处理,相对应的左脑便是运算器,右脑便是控制器。

在CPU架构中必不可少的便是数据的处理输入和输出,而存放数据的有两种存储区内存储器和外存储器,简称内存和外存。CPU这个家伙只和内存玩耍而不跟外存交流,凡是经过CPU的数据只能读写到内存里,内存不内向,乐意跟外存玩耍,跟外存交换数据。

在现在的主流计算机中,内存约为8G16G,G可以粗略的换算为1亿,那么在8G的计算机空间便有8亿的人家,每位居民的门牌便是地址,而地址又是又长又臭,十分难记。

2.变量

2.1变量的定义与操作

这时就轮到变量出场了,那么变量又是什么玩意?变量可以给数据进行命名赋值

数据类型+变量名称

例子:int a;

float bytespace,bytescore;

2.2变量的占用大小

在给变量进行命名中我们发现一个新的词汇数据类型

这又是怎的一回事?来看看世界上第1台计算机--ENIAC

这台计算机是用灯泡的亮和灭来代表1和0,那么它是如何进行数学运算的呢?

一个灯泡是一位bit。一组灯泡里有8个灯泡为一字节bit,所以8bit=1Byte

在C++中有10种数据类型,就举char和int为例,char占1byte,所以它的取值范围为0~2的8次方,如何理解?2的8次方中的8为1×8。1是占用大小---1Byte,8为1Byte=8bit,所以2的8次方的8次项就为占用大小×8(bit)

验证一下结论:int占用4Byte空间,套进公式得(取值范围=0~2的32次),32次=4(Byte)×8(bit)。

很简单吧!有人说计算机又快又准,那么我将推翻这个悖论。在超过取值范围后,精度会丢失

2.3变量的使用

那我们该如何正确食用变量呢?

  • 读取变量值 +直接使用变量名

    • 输出:cout<<a;

    • 参与运算:c=a+1;

  • 给变量赋值

    • 输入:cin>>a; 或者 scanf("%d",&a);
    • 直接赋值:a=190;

大家初学C++,可能对一些语法不了解,我们先讲一下运算符

算术运算符 + - * / % ++ --
逻辑运算符 && || !
位运算符 & | ^ ~ >> <<
赋值运算符 = += -= *= /= %= <<= >>= &= ^= |= ~=
杂项运算符 size of() condition?: ,

如何优雅地学习计算机编程-C++1的更多相关文章

  1. 如何优雅地学习计算机2<-->Helloworld

    0.导入 ​ 在进行粗略的学习计算机底层知识和变量后,我们来开始编写年轻人的第一个程序--Helloworld. ​ 我们需要用到的工具有:1.Dev-C++(也可以使用其他软件)2.脑子(最重要) ...

  2. Linux运维人员如何学习python编程

    Linux运维人员如何学习python编程 从不会写代码,到自己独立能写代码解决问题 .这个问题很重要!盲目学习所谓的项目,最后 还是不会自己写代码解决问题.首先解决了独立能写代码解决问题,再通过项目 ...

  3. 对于大一学习计算机的新手(c/c++ )提出一些学习经验

    对于刚刚上大一的新手,且是那种十分有上进的学生,在学习计算机的过程中必然会有一大堆的困惑,比如: 1 .如何学好编程(这与以往的应试教育完全不同,按照以往的那种学习方式,看书刷题不过是成为一个考试学霸 ...

  4. 有一定基础的 C++ 学习者该怎样学习 Windows 编程?

    人的心理有个奇异的特性:一项知识一旦学会之后,学习过程中面临的困惑和不解非常快就会忘得干干净净,似乎一切都是自然而然,本来就该这种.因此,关于「怎样入门」这类问题,找顶尖高手来回答,未必能比一个刚入门 ...

  5. 学习面向对象编程OOP 第一天

    面向对象编程 Object Oriented Programming 一.什么是面向对象编程OOP 1.计算机编程架构; 2.计算机程序是由一个能够起到子程序作用的单元或者对象组合而成.也就是说由多个 ...

  6. Haskell学习-函数式编程初探

    原文地址:Haskell学习-函数式编程初探   为什么要学习函数式编程?为什么要学习Haskell?   .net到前端,C#和JavaScript对我来说如果谈不上精通,最起码也算是到了非常熟悉的 ...

  7. Linux学习-计算机基础

    Linux 学习-计算机基础 一.描述计算机的组成及其功能. 计算机系统是由硬件(Hardware)和软件(Software )两部分组成. 硬件: 从硬件基本结构上来讲,计算机是由运算器.控制器.存 ...

  8. 学习 Python 编程的 19 个资源 (转)

    学习 Python 编程的 19 个资源 2018-01-07 数据与算法之美 编译:wzhvictor,英文:codecondo segmentfault.com/a/119000000418731 ...

  9. python人工智能爬虫系列:怎么查看python版本_电脑计算机编程入门教程自学

    首发于:python人工智能爬虫系列:怎么查看python版本_电脑计算机编程入门教程自学 http://jianma123.com/viewthread.aardio?threadid=431 本文 ...

随机推荐

  1. React 性能优化 All In One

    React 性能优化 All In One Use CSS Variables instead of React Context https://epicreact.dev/css-variables ...

  2. 微信小程序-云开发-实战项目

    微信小程序-云开发-实战项目 微信小程序 微信小程序平台服务条款 https://developers.weixin.qq.com/miniprogram/product/service.html h ...

  3. 你所不知道的 cnblogs

    你所不知道的 cnblogs cnblogs 学院 cnblogs 班级 refs https://academy.cnblogs.com/ https://academy.cnblogs.com/b ...

  4. css & multi line words & ellipsis

    css & multi line words & ellipsis bug .news-card-content-title { width: 100%; height: 0.8rem ...

  5. dynamic creat svg in js

    dynamic creat svg in js SVG title https://developer.mozilla.org/en-US/docs/Web/SVG/Element/title < ...

  6. 安装 Angular Material UI

    文档 调色板 安装 ng add @angular/material ? Choose a prebuilt theme name, or "custom" for a custo ...

  7. Flutter: random color

    import 'dart:math' as math; import 'package:flutter/material.dart'; void main() => runApp(App()); ...

  8. JavaScript高级-类的使用

    1.面向过程与面向对象 1.1面向过程 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了. 1.2面向对象 面向对象是把事务分解成为一个 ...

  9. RabbitMq手动确认时的重试机制

    本文转载自RabbitMq手动确认时的重试机制 消息手动确认模式的几点说明 监听的方法内部必须使用channel进行消息确认,包括消费成功或消费失败 如果不手动确认,也不抛出异常,消息不会自动重新推送 ...

  10. java基础第11期——Stream流、方法引用、junit单元测试

    1.Stream流 Stream流与io流是不同的东西,用于解决集合类库已有的弊端, 1.1 获取Stream流: Collection集合的Stream方法,注意Map集合要经过转化 default ...