C++:堆栈溢出问题?

堆栈溢出的原因 1.函数调用层次太深。函数递归调用时,系统要在栈中不断保存函数调用时的现场和产生的变量,如果递归调用太深,就会造成栈溢出,这时递归无法返回。再有,当函数调用层次过深时也可能导致栈无法容纳这些调用的返回地址而造成栈溢出。 2.动态申请空间使用之后没有释放。由于C语言中没有垃圾资...

2018-09-21 18:31:09

阅读数 407

评论数 0

C++:while(cin>>tmp)无法结束

有这样一段代码: int tmp; vector<int> arr; while (cin >> tmp) { arr.push_back(tmp); } for (int i = 0; i &...

2018-09-14 20:25:46

阅读数 579

评论数 0

解决:CentOS 7下yum install mysql-server无包可用

在Linux下安装mysql,同时要把mysql-server安装完成,但是使用yum安装会出现以下问题 解决方法 如下: 首先输入以下命令 wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 然后...

2018-09-08 10:07:48

阅读数 656

评论数 0

面试题:虚函数与纯虚函数的区别

1.虚函数和纯虚函数可以定义在同一个类中,含有纯虚函数的类被称为抽象类,而只含有虚函数的类不能被称为抽象类。 2.虚函数可以被直接使用,也可以被子类重载以后,以多态的形式调用,而纯虚函数必须在子类中实现该函数才可以使用,因为纯虚函数在基类有声明而没有定义。 3.虚函数和纯虚函数都可以在子类中被...

2018-09-03 17:21:11

阅读数 89

评论数 0

Struct和Class的区别

一、c++最初被称为“c with class”,足见class在c++中的地位。在c++中我们可以用class自定义用户数据类型,然而它还存在一个类似的——struct,他们似乎有着太多的相同的特点与功能。C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的...

2018-09-03 17:13:07

阅读数 31

评论数 0

STL之迭代器&&迭代器失效

1.说说设计模式?(迭代器模式)         迭代器模式作为STL的六大组件之一,通俗来讲,它就是用来遍历容器的,对容器进行一定的操作。我们通常使用的容器vector、list、map、set、multimap、multiset、deque,内部是实现有顺序表、链表、红黑树。如果我们遍历这些...

2018-08-11 19:59:59

阅读数 83

评论数 0

C++四种强制类型转换的机制与功能

C++四种强制类型转换 1.static_cast(编译时处理) 用于两个相关的类型的转换,属于静态转换(非多态类型转换) 2.const_cast(编译时处理) 删除已有变量的const属性,方便赋值,但是修改的话还是要加上volatile关键字只能对指针或者引用去除或者添加co...

2018-08-09 11:29:19

阅读数 109

评论数 0

C++11新特性之一

1.初始化方式 C++11扩大了用大括号括起的列表(初始化列表)的使用范围,使其可用于所有的内置类型和用户自定义的类型,使用初始化列表时,可添加等号 (=),也可不添加。 vector<int> v; v.pushback(1); ... vecto...

2018-08-09 01:33:30

阅读数 42

评论数 0

访问空指针程序崩溃的底层剖析

在C/C++程序中,我们访问空指针,产生“不可预料”的错误,导致程序崩溃,那为什么程序会崩溃呢? 访问指针的时候虚拟地址就会向物理地址映射,此时页表会去查看这块地址,而这块地址被存放在只读区,当页表发现地址是无效的,就会反映给操作系统,操作系统就会发送11号信号终止此进程,所以进程异常终止...

2018-08-04 18:53:59

阅读数 194

评论数 0

正则表达式

shell编程之正则表达式部分 正则表达式简介 正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找以及替换操作。 正则表达式与通配符 这里归纳一下: 正则表达式: 主要用来匹配文件内容,如greo 包含匹配 通配符: 主要...

2018-08-01 17:24:21

阅读数 36

评论数 0

shell编程之条件判断与流程控制

shell编程之条件判断语句与流程控制 简单点来说就是if,for,case,where之类的判断语句,然后结合一些shell命令来达到简化一些操作。 下面的内容是重点,是条件判断的重点!!!刚开始不理解也没关系,下面有实例演示。 按照文件类型判断 判断格式 [ 需要进行判断的语句 ]...

2018-08-01 17:20:17

阅读数 215

评论数 0

shell运算符

declare [+/-][选项] 变量名 -表示给变量设定类型属性 +表示取消掉设定的类型属性 选项: a 数组类型 i 整数类型 x 设为环境变量 r 将该变量设定为只读属性,设定后无法被unset取消掉,无法修改其中的内容 p 显示指定变量的被声明类型 整数类型例子 x=1...

2018-08-01 17:08:36

阅读数 25

评论数 0

shell变量

shell编程简介 shell编程目的主要是为了简化管理人员的管理操作,算是为偷懒找了一个好的办法。 变量定义 变量是计算机内存的单元,其中存放的值可以改变。 变量让你能够把程序中准备使用的每一段数据都赋值给一个简短、易于记忆的名字,因此他们十分有用。 变量的命名规...

2018-08-01 17:02:45

阅读数 39

评论数 0

C语言复习—模拟实现C库函数、atoi

模拟实现C语言库函数 str库函数 \#include <stdio.h> \#include <stdlib.h> \#include <assert.h&g...

2018-08-01 15:40:47

阅读数 28

评论数 0

n!的末尾0的个数

题目描述: 输入一个正整数n,求n!(即阶乘)末尾有多少个0? 比如: n = 10; n! = 3628800,所以答案为2 。 解题思路: 对于这样的问题,我们可以换个思维方式,它要求0的个数,那么0是怎么来的? 是不是一对2*5得到的0,所以我们可以分解这个问题分,...

2018-07-30 14:24:55

阅读数 105

评论数 0

动态内存分配、malloc与new的区别

内存分配 先看内存的分布状况 一个由C/C++编译的程序占用的内存分为以下几个部分: 1、栈区(stack)— 由编译器自动分配释放 ,存放为运行函数而分配的局部变量、函数参数、返回数据、返回地址等。其操作方式类似于数据结构中的栈。 2...

2018-07-29 10:03:27

阅读数 1643

评论数 0

C语言复习—宏与函数、sizeof与strlen区别总结

#define定义的宏和函数的比较 程序编译过程 预编译阶段(*.i) —>编译(*.s)—>汇编(*.o)—>链接 预处理在预编译阶段,做一些代码文本的替换工作,主要处理#开头的预编译指令。 C语言提供的预...

2018-07-27 11:46:42

阅读数 161

评论数 0

C++面试经典总结

1.    面向对象的程序设计思想是什么? 答:把数据结构和对数据结构进行操作的方法封装形成一个个的对象。 2.    什么是类? 答:把一些具有共性的对象归类后形成一个集合,也就是所谓的类。 3.    对象都具有的两方面特征是什么?分别是什么含义? 答:对象都具有的特征是:静态特征和动...

2018-07-27 09:46:07

阅读数 356

评论数 0

C/C++经典面试题总结

面试题3:sizeof和strlen的区别 sizeof和strlen有以下区别:      sizeof是一个操作符,strlen是库函数。      sizeof的参数可以是数据的类型,也可以是变量,而strlen只能以结尾为‘\0‘的字符串作参数。     编译器在编译时就计算出了sizeo...

2018-07-27 09:39:37

阅读数 345

评论数 0

C语言面试题总结

1 预处理 问题1:什么是预编译?何时需要预编译? 答: 预编译又称预处理,是整个编译过程最先做的工作,即程序执行前的一些预处理工作。主要处理#开头的指令。如拷贝#include包含的文件代码、替换#define定义的宏、条件编译#if等。. 何时需要预编译: 1、总是使用不经常改动的大型代码体。...

2018-07-26 22:07:16

阅读数 1306

评论数 0

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