自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Roger's Blogs

砥砺前行

  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 C语言之字符数组的初始化

C语言字符数组有几种不同的初始化方式, 它们之间存在着一些差别.char message1[] = {'h', 'e', 'l', 'l', 'o'}; 执行上述初始化后内存情况为: 注意到字符数组并不是以 ‘\0’ 结尾.char message2[] = {'h', 'e', 'l', 'l', 'o', '\0'}; 执行上述初始化后内存情况为: 手动加上了 ‘\0’...

2018-03-22 23:21:41 1846 1

原创 C语言之可变参数列表

对于函数参数的个数或者类型在编写函数时未确定的情况, C语言允许使用 可变参数列表, 用 , ... 来表示. 使用可变参数列表要注意:含有可变形参的形参列表中, 至少要有一个确定类型的形参在可变参数列表 (, ...) 的后面不能再跟其他形参由于可变参数列表中的形参类型不确定, 所以编译器将对传入的实参执行默认 实参提升, 比如传入实参为char型, 将自动提升为int型需要借助 s...

2018-03-22 21:15:01 1263

原创 C语言之存储类说明符

作用域 链接属性 存储时期 存储类型内容请先参考博文C语言有5中存储类型修饰符: auto register static extern typedef 下面分别介绍各说明符的用法:auto: 表明变量具有自动存储类型 auto说明符只能用在具有代码块作用域的变量的声明中, 但是由于这类变量本身就具有自动存储类型(存储于运行时堆栈中), 所以auto通常只是起显式说明的作用....

2018-03-22 14:18:36 1650

原创 C语言之作用域 链接属性 存储时期 存储类型

重要的概念 标识符: C语言中变量名, 函数名, 函数参数名都称为标识符. 作用域: 标识符的作用域指的是此标志符在当前源代码中可见(可被访问)的范围 链接属性: 标识符的链接属性指的是如何处理不同文件中出现的相同标识符 存储时期: 变量的存储时期指的是变量内存在程序执行中存在的时期 存储类型: 变量的存储类指的是存储变量的内存的类型 存储类说明符: C语言的存储类说明符用来改变标识...

2018-03-22 14:16:12 484 2

原创 Intel与ARM

Intel(英特尔) 与 ARM 都是全球知名的 CPU 设计公司(Intel兼顾生产). 本文主要通过介绍这两家公司了解目前市场上的主流CPU,.公司简介 Intel 公司位于美国, 主要设计CPU架构, 提供指令集, 生产各种CPU , PC端的经常听到的赛扬系列, 酷睿系列, 至强系列都是其设计生产的CPU. 目前Intel的市场主要在PC端CPU, 以及服务器CPU等. AR...

2018-03-20 15:26:46 1770

原创 ARM处理器型号

ARM公司拥有众多CPU指令集, CPU架构, CPU系列. 本文旨在介绍ARM公司的CPU产品线. 下图展示了ARM公司CPU的产品线: 首先有必要了解一下ARM公司的命名规则: ARM的命名规则, 大致分成三类 1. 基于ARM Architecture版本的“指令集架构”命名规则 2. 基于ARM Architecture版本的“处理器系列”命名规则 3. 基于ARM A...

2018-03-18 21:50:32 12774

原创 C语言之短路求值

C语言的逻辑操作符 && , || 具有 短路求值 的特性.逻辑与 && && 操作符的左操作数总是首先进行求值, 如果它的值为真, 则继续计算右操作数的值, 然后执行与操作得到表达式结果; 如果它的值为假, 根据与操作 有假则假 的性质可以断定该表达式的值为假, 所以不再计算右操作数的值.逻辑或 || || 操作符的左操作数也是首先进行...

2018-03-17 19:30:31 3351

原创 C语言之逻辑移位与算术移位

C语言的移位操作符 >> << 可以将值按照二进制位左移或右移. 具体的实现方式如下:左移 << 左移时值最左边的几位被丢弃, 右边多出来的空位用 0 补齐. 右移 >> 右移时值最右边的几位被丢弃, 对于无符号数, 跟左移时一样空位补 0, 对于有符号数, 左边多出来的空位的有两种选择: 逻辑右移 会将空位补 0, 算术右...

2018-03-17 10:41:24 6176 3

原创 C语言之char类型的符号

char 类型所占的存储空间一般为 1byte, 实际上char类型要么是 signed char 要么是 unsigned char, signed char 的范围是 -127~127, unsigned char 的范围是 0~256, char具体是signed还是unsigned取决于编译器. 这就带来了可移植性问题. 一个解决方案是使用char时显式的规定char为signed ...

2018-03-16 23:45:20 6136

原创 存储器

存储器是计算机系统中的记忆设备, 计算机中全部信息, 包括输入的原始数据, 计算机程序, 中间运行结果和最终运行结果都保存在存储器中. 构成存储器的存储介质, 目前主要采用半导体器件和磁性材料. 存储器中最小的存储单位就是一个双稳态半导体电路或一个CMOS晶体管或磁性材料的存储元, 它可存储一个二进制代码,. 由若干个存储元组成一个存储单元, 然后再由许多存储单元组成一个存储器, 一个存储器包...

2018-03-16 17:51:29 564

原创 大端和小端问题

大端(Big-endian)和小端(Little-endian)是两种存储数据的字节序. 大端: 数据的最高位存储在起始地址单元处, 低位存储在最高地址单元处. 小端: 数据的最低位存储在起始地址单元处, 高位存储在最高地址单元处, 比如:将十六进制数 0x01234567 存储在地址 0x100 处: 大端模式数据的高位(符号位)首先被机器取出, 便于快速判断正负. ...

2018-03-14 17:19:09 1216

原创 Chapter 9: Sequential Containers

顺序容器概述 顺序容器 存取 插入删除 vector(可变大小数组) 快速随机存取 尾部快,其他慢 deque(双端队列) 快速随机存取 前端尾部快 list(双向链表) 双向顺序存取 所有位置都很快 forward_list(单向链表) 单向顺序存储 所有位置都很快 array(固定大小数组) ...

2018-03-10 14:23:37 180

原创 Chapter 8: The IO Library

IO即 Input和Output, C++通过一组定义在标准库类型中的类型处理IO, IO的目标对象可以是设备(文件, 控制台窗口等)或者内存(string类型).IO库类型有哪些? iostream头文件下定义的IO类型 istream, wistream: 从流中读取数据otream, wostream: 向流中写入数据iostream, wiostream: 读写流fst...

2018-03-10 14:22:58 164

原创 Chapter 7 : Classes(Second Part)

这篇接着First Part通过构造Screen和Window_mgr介绍类的其他特性. 首先介绍要构造的Screen和Window_mgr这两个类:Screen表示显示器的一个窗口类型成员包括: 代表string::size_type类型的pos成员数据成员包括: string类型的contents成员, 存储显示的内容.三个string::size_type类型的cursor...

2018-03-06 17:16:34 179

原创 Chapter 7: Classes(First Part)

这一章介绍类的特性, 不同以往, 我参照课本, 用构造Sales_data类的过程来介绍类的基本特性, 并在下篇介绍类的其他特性. 我会集中关注这样三个问题: 代码这样写是什么意思? 代码这样写行不行? 为什么要从这个版本改进到下一个版本?首先介绍一下要构造的Sales_data类:Sales_data类用来记录书籍的销售记录, 以及对销售记录进行基本操作.数据成员包括:str...

2018-03-04 15:46:44 197

原创 Chapter 6: Functions

什么是局部对象? 它的的生命周期是怎样的? 形参和在函数体内部定义的变量统称为局部变量, 仅在函数作用域内可见. 其生命周期依赖于定义的方式. 局部对象有两种: 自动对象 当函数执行到对象定义语句(函数内部)时创建该对象, 当执行到对象所在块(其实是对象名的作用域)末尾时销毁该对象.局部静态对象 当函数执行到对象定义语句(函数内部)时创建该对象, 直到程序终止时销毁该对象. ...

2018-03-04 15:45:17 134

原创 Chapter 5: Statements

为什么不要在switch语句内部定义变量? 考虑这样一种情况: 如果我们在switch语句的某个case中定义了一个变量并显示初始化, 而在另一个case中要用到这个变量, 那么当程序执行时跳过了定义变量的case时, 程序报错”变量由case标签跳过”(VS2015实测). 再考虑另一种情况: 如果我们在switch语句的某个case中定义了一个变量但不显式初始化, 而在另一个case中要...

2018-03-04 15:42:38 181

原创 Chapter 4: Expressions

优先级 结合律 求值顺序各自的意义 优先级和结合律共同确定了表达式的组合方式, 对于一个复杂的表达式, 高优先级运算符的运算对象相对于低优先级的运算符运算对象先结合在一起, 优先级相同的运算符运算对象依靠结合律来组合. 运算符满足左结合律意味着如果运算符优先级相同, 将按照从左向右的顺序组合运算对象.6 + 3 * 4 / 2 + 2 // 复杂的表达式// (1)乘除运算符的优先...

2018-03-04 15:42:13 136

原创 Chapter 3: Strings Vectors and Arrays

string类型是怎样比较大小的? 如果两个string对象的长度不同, 而且较短的string对象的每个字符都与较长string对象对应位置上的字符相同, 则较短string对象小于较长对象.如果两个string对象在某些对应位置上不一致, 则比较第一对相异字符.当两个string对象长度相等, 所有字符对应相同, 则string对象相等.使用string类型时要注意的地方 ...

2018-03-04 15:41:36 178

原创 Chapter 2: Variables and Basic Types

默认初始化 如果定义变量时未对变量初始化, 变量会被默认初始化, 初始化所用的初始值由变量类型和变量定义的位置共同决定. 定义在任意函数体之外的变量将初始化为0值; 定义在函数体之内的变量将不被初始化; 类类型的初始化由类自己决定(默认构造函数或自定义构造函数).复合类型的声明与定义 通过基本数据类型, 类型修饰符, 声明符可以声明或定义复合类型int *ptr = ...

2018-03-04 15:41:13 236

C_Primer_Plus_编程练习答案

C_Primer_Plus_编程练习答案.

2015-10-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除