摘要:格式化控制符速览 命令 功能 %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %o 无符号以八进制表示的整数 %g 把输出的值按照%e或者%f类型中输出长度较小的方式输出 %
阅读全文
随笔分类 - C&C++
摘要:视C++为一个语言联邦 C Object-Oriented C++ Template C++ STL 对内置(也就是C-like)类型而言pass-by-value通常比pass-by-reference高效,但当你从C part of C移往Object-OrientedC,由于用户自定义(use
阅读全文
摘要:size_t是 https://www.zhihu.com/question/24773728/answer/66535663 内存以字节为单位 32位和64位的区别是cpu最大寻址能力,即能寻访的内存地址大小。 大多数情况下,int的大小就是一个计算机的字长,在一个32位的计算机里,int就是4字
阅读全文
摘要:隐藏 当同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。 举例来说明。同时编译两个源文件,一个是a.c,另一个是main.c。 //a.c char a = 'A'; // global variable void msg() { printf("Hello\n");
阅读全文
摘要:一维数组 int ia[] = {0,1,2,3,4,5,6,7,8,9}; //ia是数组 多维数组 C++ 中并没有多维数组,它就是数组的数组。 int ia[3][4]; 初始化 int ia[3][4] = { {0, 1, 2, 3}, {4, 5, 6, 7}, {8, 9, 10, 1
阅读全文
摘要:C++输入输出流 简介 数据输入和输出过程也是数据传输的过程。数据就像流水一样从一个地方流动到另一个地方,因此,在C++中将输入输出称为“流(stream)"。 C++的输入输出流是指由若干字节组成的字节序列,这些字节中的数据按顺序从一个对象传送到另一对象。流表示了信息从源到目的端的流动。在输入操作
阅读全文
摘要:简介 Boost库是一个功能强大、构造精巧、跨平台、开源并且完全免费的C++程序库。 本书内容基于Boost官方于2012年8月发布的Boost1.51版,共包含117个库(组件),分为25大类,涵盖字符串与文本处理、容器、迭代器、算法、图像处理、模板元编程、并发编程等许多领域——使用Boost,将
阅读全文
摘要:简单状态机 简单状态机按照如下工作流程: 它包括一个初始化伪状态,一个正常状态和一个结束状态。如下代码是上述图表中流程的一种实现。 Sm1_ 是一个状态机的定义,在 Sm1_,有两个状态,state1 和 End。初始伪状态是定义在一下代码行: 此初始状态类型定义意味着状态机 Sm1 从状态 Sta
阅读全文
摘要:简介 Boost 状态图库是一个无需代码生成器就可以快速转换 UML 状态图表伪可执行的 C++ 代码框架。由于几乎支持所有 UML的特性直接转换,故所产生的C++代码十分接近于状态表的原文文字描述。 如何阅读此教程 该教程内容设计为逐步深入。读者可以从合适位置开始读,直到对于解决你的任务为止。特别
阅读全文
摘要:|英文字母字节数|中文汉字字节数|编码方式| |: |: :|: :| 1|2|GB2312 1|2|GBK 1|2|GB18030 1|1|ISO 8859 1 1|3|UTF 8 4|4|UTF 16 2|2|UTF 16BE 2|2|UTF 16LE 1、美国人首先对其英文字符进行了编码,也就
阅读全文
摘要:一、迭代器 迭代器是一种类型替换,如 每个容器类都定义了迭代器, 迭代器是一种广义指针,用来为不同的容器提供统一的接口。 举个栗子: vector::iterator pr; 此时代表的是: vector::iterator pr; 此时代表的是: 而迭代器iterator用于泛指所有类型指针。 遍
阅读全文
摘要:程序崩溃的原因分类 1.函数栈溢出 一个变量未初化、未赋值,就读取它的值。 ( 这属于逻辑问题,往往是粗心大意的导致的 ) 2.函数栈溢出 (1)定义了一个体积太大的局部变量 (2)函数嵌套调用,层次过深(如无穷递归) 3.数组越界访问 访问数组元素时,下标越界 4.指针的目标对象不可用 (1)空指
阅读全文
摘要:利用向量公式: AB·AC=|AB|·|AC|·cos(theta) c include include int main() { //90,45,45 //double Ax(0),Ay(0),Bx(1),By(0),Cx(0),Cy(1); //60,60,60 //double Ax(0),A
阅读全文
摘要:```c //Rata Die day one is 0001-01-01 int calculateDays(uint32_t year, uint32_t month, uint32_t day) { if (month < 3) year--, month += 12; return 365 * year + year / 4 - year / 100 + year / 400 + (153
阅读全文
摘要:algorithm 是C++标准程式库中的一个头文件,定义了C++ STL标准中的基础性的算法(均为函数模板)。在C++98中,共计有70个算法模板函数;在C++11中,增加了20个算法模板函数。其中有5个算法模板函数定义在头文件numeric中。 下文所称的“序列”(sequence),是指可以用
阅读全文
摘要:有三个智能指针,auto_ptr(弃用)、unique_ptr、shared_ptr. 智能指针可以自动跟踪动态内存,在其过期时自动释放。 一、shared_ptr 用于new创建的对象,而不适用于new[]创建的对象, 用于多个指针共享一个地址的情况。 默认初始化的智能指针中保存着一个空指针。 1
阅读全文
摘要:正则表达式是一种字符串匹配和文本替换的操作,功能强大,内容颇多。 一、正则表达式库组件 |组件|作用| |: |: :| |regex|表示一个正则表达式的类| |regex_match|将一个字符序列与一个正则表达式匹配| |regex_search|寻找第一个与正则表达式匹配的子序列| |reg
阅读全文
摘要:"Boost库" 由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容。在C++社区中影响甚大,是不折不扣的“准”标准库。 字符串和文本处理库 Conversion库:对C++类型转换的增强,提供更强的类型安全转换、更高效的类型安全保护、进行范围检查的数值转换和词法转换。
阅读全文
摘要:C++语言的一个类库,用来方便地管理一系列的bit位而不用程序员自己来写代码。 bitset除了可以访问指定下标的bit位以外,还可以把它们作为一个整数来进行某些统计。 一、函数 |命令|功能| |: |: :| |(constructor)| 构造函数 |all| 测试所有的标志位是否置位 |an
阅读全文
摘要:assert断言,用于测试。当判断条件不满足,会终止程序并弹窗,然后会定位到断点处,用以调试。 调试结束后可以用 取消断言。
阅读全文