c++基础

说明:以下图片及知识点均来自于学堂在线c++程序设计基础–by 清华大学郑莉教授,仅自己在博客做一个总结,作为自己复习所用,无其他用途

计算机软件

转载自学堂在线c++程序基础课程

  • 应用软件
    我们平常使用安装的软件
  • 系统软件
    是指操作系统,linux,windows,macos等
  • 中间件
    提供系统软件和应用软件之间链接的软件(大型应用软件需要用到)

软件=程序+文档

程序编写完毕后,需要写文档,写说明,描述你的数据结构,描述你的算法。

面向对象的特性

  • 继承
  • 封装
  • 多态

程序翻译过程

高级语言写的代码,必须通过解释,转换成二进制的机器语言,才能让计算机识别,对此,有三种常见的解释方式:

  • 汇编程序
    将汇编语言源程序翻译成目标程序
  • 编译程序
    将高级语言源程序翻译成目标程序,一般写好代码后就编译一次,然后通过连接,可以是每个人负责的模块之间连接,还有你调用函数库中的代码也需要连接,连接之后形成一个可执行文件,之后就直接使用这个可执行文件,当有代码改动时再重新编译,发布下一版,windows平台的exe文件,就是这样的可执行程序。优点,编译一次之后就不用再在编译上面浪费时间了。缺点,不能跨平台,在windows编译完形成的可执行文件不能在linux中使用,得重新编译。
  • 解释程序
    将高级语言源程序翻译成机器指令,它是边翻译变执行,也就是说每次你要使用这个软件,都得让相关的翻译器运行着,翻译一条运行一条,缺点就是慢一些,好处是可以跨平台,因为写好的代码放在不同平台依然可以重新解释,例如java就是采用半编译半解释的方式。
信息的存储单位

位 bit 是信息的最小单位,表示一位二进制数
字节 byte 八个二进制数组成一个字节,1byte = 8bit
千字节 1KB =1024B
兆字节 1MB = 1024K
吉字节 1GB =1024 M
二进制,八进制,十进制,十六进制互相之间转换
二进制转换为八进制,就是将三个二进制看为一个八进制,四个二进制看做一个十六进制
二进制转为十进制,二进制的每一位(0或1)乘以2的位置数减1次的次方,相加。

二进制的负整数如何表示
  • 原码 加一个符号位,正数为0,负数为1
  • 反码 符号位不变,其余各位取反
  • 补码

c++函数作用域分类

函数类型作用域

作用域的范围就是声明函数时,那个放形参的括号(),也叫形参表。所以在函数声明的时候,甚至可以不写变量名,只声明变量类型都可以(当然不推荐这样,因为可读性不好),因为形参表中的变量作用域只存在与括号内,编译器在编译过程中只在乎参数类型和顺序,因为出了这个括号这几个变量作用域就结束了,即使实参传进来,和形参结合时,也不需要管形参叫啥,只要按照对的变量类型和顺序,就能把实参成功和形参结合。

局部作用域(块作用域)

在函数体实现的大括号内,就是局部作用中“局部”的范围,同时在这里面再写一个大括号,那这个新加的大括号内又会形成一个局部作用域,在这里面新定义的变量,局部作用域的范围就在新的打括号内。

类作用域

类的成员具有类作用域,其范围包括类体和成员函数体

文件作用域

不是以上的几个,剩下的就是文件作用域,其作用域开始于声明点,结束于文件尾。也称为静态作用域

命名空间作用域

(之后补充)

样例程序

//lab5_1.cpp
#include <iostream>
using namespace std;

void fn1(); 
int x = 1, y = 2; 

int main()
{
   
    cout << "Begin..." << endl;
    cout << "x = " << x << endl;
    cout << "y = " << y << endl;
    cout << "Evaluate x and y in main()..." << endl;
    int x = 10, y = 20;
    cout << "x = " << x << endl;
    cout << "y = " << y << endl;
    cout << "Step into fn1()..." << endl;
    fn1();
    cout << "Back in main" << endl;
    cout << "x = " << x << endl;
    cout <<<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值