C++学习笔记
烂笔头2333
这个作者很懒,什么都没留下…
展开
-
数据存储
|类型 |16位系统/字节 |32位系统/字节 |64位系统/字节||------------|---------||char|1|1|1||char*|2|4|8||short|2|2|2||int|2|4|4||long|4|4|8||long long|8|8|8|注:1、64位系统下,编译器为了向前兼容,将int类型自动编译为4个字节的了;2、这些都是编译器来控原创 2017-09-11 16:08:59 · 162 阅读 · 0 评论 -
八皇后问题
问题:国际象棋中的皇后,可以横向、纵向、斜向移动。如何在一个8X8的棋盘上放置8个皇后,使得任意两个皇后都不在同一条横线、竖线、斜线方向上?思路:使用递归回溯的方式。所谓递归回溯,本质上是一种枚举法。这种方式从棋盘的第一行开始尝试摆放第一个皇后,摆放成功后,递归一层,再遵循规则在棋盘第二行来摆放第二个皇后。如果当前位置无法摆放,则向右移动一格再次尝试,如果成功,则继续递归一层,摆放第三个皇后...转载 2018-12-18 15:41:09 · 198 阅读 · 0 评论 -
字符函数库cctype
C++ 从C语言继承了一个与字符相关的、非常方便的函数软件包,它可以简化诸如确定字符是否为大写字母、数字、标点符号等工作,这些函数的原型是在头文件cctype中定义的 。函数名称返回值isalnum()如果参数是字母或数字,则返回trueisalpha()如果参数是字母,则返回trueisblank()如果参数是空格或水平制表符,则返回trueiscn...原创 2018-11-22 16:13:59 · 137 阅读 · 0 评论 -
字符编码中的一些概念辨析
ASCII码在计算机内部,每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合成256种状态,这被称为一个字节(byte)。一个字节一共可以用来表示256中不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111. 上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,座椅统一规定。这被称为ASCII码,一直沿用至今。 ASC原创 2017-11-01 17:40:06 · 181 阅读 · 0 评论 -
climits头文件中的符号常量
符号常量 表示 CHAR_BIT char的位数 CHAR_MAX char的最大值 CHAR_MIN char的最小值 SCHAR_MIN signed char 的最大值 SCHAR_MIN signed char 的最小值 UCHAR_MAX unsigned char 的最大值 SHRT_MAX short 的最大值 SHRT_M原创 2017-10-24 16:47:28 · 271 阅读 · 0 评论 -
cctype中的字符函数
需要使用头文件 #include函数名称返回值isalnum()如果参数是字母或数字,该函数返回trueisalpha()如果参数是字母,该函数返回trueiscntrl()如果参数是控制字符,该函数返回trueisdigit()如果参数是数字(0~9),该函数返回trueisgraph()如果参数是除空格之外的打印字符,该函数返回true原创 2017-09-11 16:08:25 · 194 阅读 · 0 评论 -
在某些情况下,实参与引用参数不匹配,C++将生成临时变量
如果实参与引用参数不匹配,C++将生成临时变量。当前,仅当参数为const引用时,C++才允许这样做。如果引用参数是const,则编译器将在下面两种情况下生成临时变量:• 实参的类型正确,但不是左值;• 实参的类型不正确,但可以转换成正确的类型;左值是什么呢?左值参数是可被引用的数据类型,例如,变量、数组元素、结构成员、引用和解除引用的指针。非左值包括字面常量(用引号括起的字符串除外,他们由其地原创 2017-09-11 16:08:28 · 613 阅读 · 2 评论 -
何时使用引用参数
使用引用参数的主要原因:1)程序员能够修改调用函数中的数据对象。2)通过传递引用而不是整个数据对象,可以提高程序的运行速度。当数据对象较大时(如结构和类对象),第二个原因最重要。这些也是使用指针参数的原因。因为引用参数实际上是基于指针的代码的另一个接口。使用引用参数的指导原则:对于使用传递的值而不做修改的函数:1)如果数据对象很小,如内置数据类型或小型结构,则按值传递。2)如果数据对象是数组,则使原创 2017-09-11 16:08:31 · 497 阅读 · 0 评论 -
程序编译原理小析
编译过程的最终产品是可执行程序——由一组机器语言指令组成。运行程序时,操作系统将这些指令载入到计算机内存中,因此每条指令都有特定的内存地址。计算机随后将逐步执行这些指令。有时(如有循环或分支语句时),将跳过一些指令,向前或向后跳到特定地址。常规函数调用也使程序跳到另一个地址(函数的地址),并在函数结束时返回。执行到函数调用指令时,程序将在函数调用后立即存储该指令的内存地址,并将函数参数复制到堆栈(原创 2017-09-11 16:08:33 · 194 阅读 · 0 评论 -
C++中带有默认参数的函数及函数原型
应注意:带有默认参数的函数,其默认参数应在声明时添加,实现时不能加。 void func(int a = 3); int main() { func(); return 0; } void func(int a) { …… }...原创 2019-03-27 15:01:01 · 1765 阅读 · 1 评论