C/C++学习
JAVA/C++
始终保持对代码的那份单纯的热爱,保持对技术的专注和钻研.
展开
-
c++/sort函数的使用
关于sort函数的使用场景有很多,下面主要总结常用的几种.需要头文件<algorithm>语法描述:sort(begin,end,cmp),cmp参数可以没有,如果没有默认非降序排序。1.以int为例的基本数据类型的sort使用#include<iostream>#include<algorithm>#include<cstring&...原创 2019-08-01 10:25:37 · 662 阅读 · 0 评论 -
悬挂访问
产生在实际使用过程中,有时会因为用户申请了空间,但是在使用完成后没有向系统发出释放的指令,导致存储空间既没有被使用也没有被回收,变为了无用单元或者会产生悬挂访问的问题。例子假设使用 malloc 申请了一块存储空间,有多个指针同时指向这块空间,当其中一个指针完成使命后,私自将该存储空间使用 free 释放掉,导致其他指针处于悬空状态,如果释放掉的空间被再分配后,再通过之前的指针访问,就...原创 2019-09-03 22:28:31 · 399 阅读 · 0 评论 -
List, Vector, Map, Set用法详解
~FIRSTList与VectorList封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]。Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快。List对于随机访问速度慢得多,因为可能要遍历整个链表才能做到,但是对于...原创 2019-08-06 11:39:57 · 620 阅读 · 0 评论 -
指针与链表
真正有用的动态变量很少会是int,double这样的简单类型.相反都是一些复杂类型,比如数组,结构体,或类.结构体或类类型的动态变量通常由一个或多个成员变量,这些变量是指针,可将动态变量连接到其它动态变量.一.节点在C++中,节点作为结构或类实现.struct ListNode{string item;int count;ListNode *link;}typedef L...原创 2019-07-07 20:27:50 · 3987 阅读 · 0 评论 -
指针与动态数组
不要把指向月亮的手指头当成是月亮. ___禅语指针是变量的内存地址.指针可存储到变量中,虽然指针是地址,地址是数字,但也不能将它存储到int或double类型的变量中.容纳指针的变量必须声明为指针类型. 操作符 作用 提领操作符* 指针变量前的操作符*生成它所指向的变量. 取址操作符& 普通变量前的操作符&生成那个变量...原创 2019-07-06 19:45:52 · 3594 阅读 · 0 评论 -
for(;;)和while(true)的区别
“死循环”有两种写法:for(;;)和while(true)源码中多数是for( ; ; )这种形式的.区别:总结:for (;;):1.指令少2.不占用寄存器3.没有判断跳转,并不是不能跳出也就是说两者在在宏观上完全一样的逻辑,但是底层完全不一样,for相对于来说更加简洁明了。#include <cstdio>#include <cstring&...原创 2019-07-15 19:53:35 · 4254 阅读 · 3 评论 -
getchar()详解及跨行读字符的解决办法
getchar是读入函数的一种。它从标准输入里读取下一个字符,相当于getc(stdin)。返回类型为int型,为用户输入的ASCII码或EOF(EOF是文件结尾标志).一个常见的应用是以这个函数为结尾,以防止窗口的闪退(不用system("pause"))getchar有一个int型的返回值。当程序调用getchar时.程序就等着用户按键。用户输入的字符被存放在键盘缓冲区中。直到用户按回...原创 2019-07-15 19:13:27 · 1843 阅读 · 0 评论 -
Vector/向量
"好,我就吃它"爱丽丝说,"如果他能是我变大,我就能够着钥匙了;如果他是我变小,我就可以从门缝下面爬过去.反正不管怎样,我都可以到那个花园里去...... " ___刘易斯.卡洛尔,<<爱丽丝漫游奇遇记>>可将向量vector视为在程序运行时改变长度的数组 .不由得想起了只有向量.一:向量的基本知...原创 2019-07-06 15:05:24 · 288 阅读 · 0 评论 -
指针的温故知新
C语言中由于指针的灵活性,导致指针能代替数组使用,或者混合使用,这些导致了许多指针和数组的迷惑,因此,刻意再次深入探究了指针和数组很有必要.重新认知几个概念数组:数组变量实际是指针变量.数组是多个元素的集合,在内存中分布在地址相连的单元中,所以可以通过其下标访问不同单元的元素。所以是在内存地址的概念讨论数组.但是,内存地址就是指针.哈哈,你大爷还是你大爷.关于证明,详见文章https:...原创 2019-07-07 22:33:56 · 232 阅读 · 0 评论 -
无符号unsigned带来的问题探讨
C语言有符号无符号数问题题目:用下图代码计算数组array中所有元素的和,其中元素的数量由参数length给出.问题:试分析这段程序,当参数length=0时,运行结果/返回值为多少? 运行这段代码, 当参数length=0时,实际会产生什么结果? 请解释实际运行结果产生的原因. 修改代码以得出正确结果.一:先讨论参数为有符号类型.此函数显然为叠加求数组元素的和,在不发...原创 2019-03-30 20:04:33 · 1347 阅读 · 0 评论