![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c/c++
xyz1253587469
记录我的学习资料,希望不会断更。送给未来的自己。
展开
-
const 和 #define区别
(1) 编译器处理方式不同 define宏是在预处理阶段展开。 const常量是编译运行阶段使用。(2) 类型和安全检查不同 define宏没有类型,不做任何类型检查,仅仅是展开。 const常量有具体的类型,在编译阶段会执行类型检查。(3) 存储方式不同 define宏仅仅是展开,有多少地方使用,就展开多少次,不会分配内存。转载 2016-01-27 12:14:15 · 263 阅读 · 0 评论 -
算法导论之分治法
参考网址:这里写链接内容#include<iostream>#include<math.h>using namespace std;// 返回跨越中值的最大数组和int* find_max_crossing_sub(int *arr, int low, int mid, int high){ int left_sum = INT_MIN; int sum = 0; i转载 2016-12-13 16:35:34 · 336 阅读 · 0 评论 -
分治法合并排序(C++)
参考网址:http://www.cnblogs.com/Amrirey/p/5440788.html http://blog.csdn.net/left_la/article/details/8656953#include<iostream>#include<time.h>#include<stdlib.h>using namespace std;// 合并函数void merge(in转载 2016-12-12 16:50:20 · 1407 阅读 · 1 评论 -
算法导论之插入排序
参考网址:这里写链接内容#include<iostream>#include<stdlib.h>using namespace std;int main(){ int a[6] = {5, 2, 4, 6, 1, 3}; int length = sizeof(a)/sizeof(int); cout << length << endl; int j = 0,转载 2016-12-12 11:20:27 · 202 阅读 · 0 评论 -
常用的排序算法的时间复杂度和空间复杂度
原文地址:http://blog.csdn.net/wuxinyicomeon/article/details/5996675/常用的排序算法的时间复杂度和空间复杂度排序法最差时间分析平均时间复杂度稳定度空间复杂度冒泡排序O(n2)O(n2)稳定O(1)快速排序O(n2)O(n*log2n)转载 2016-12-12 10:28:22 · 348 阅读 · 0 评论 -
C++的一大误区——深入解释直接初始化与复制初始化的区别
原文地址:http://blog.csdn.net/ljianhui/article/details/9245661不久前,在博客上发表了一篇文章——提高程序运行效率的10个简单方法,对于其中最后一点,多使用直接初始化,有很多读者向我提出了疑问,并写了一些测试程序,来说明直接初始化与复制初始化是同一件事。让我了解到大家对于直接初始化与复制初始化的区别的确是不太清楚,无可否认,那篇文章的例子转载 2016-07-28 20:38:32 · 227 阅读 · 0 评论 -
堆和栈区别 生长方向和存储方向
C++作为一款C语言的升级版本,具有非常强大的功能。它不但能够支持各种程序设计风格,而且还具有C语言的所有功能。我们在这里为大家介绍的是其中一个比较重要的内容,C++内存区域的基本介绍。C++内存区域分为5个区域。分别是堆,栈,自由存储区,全局/静态存储区和常量存储区。栈:由编译器在需要的时候分配,在不需要的时候自动清除的变量存储区。里面通常是局部变量,函数参数等。堆:由n转载 2016-02-28 13:08:27 · 4483 阅读 · 0 评论 -
内存分为的5大区 。堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两转载 2016-02-26 21:14:26 · 739 阅读 · 0 评论 -
指针数组和数组指针的区别
这两个名字不同当然所代表的意思也就不同。我刚开始看到这就吓到了,主要是中文太博大精深了,整这样的简称太专业了,把人都绕晕了。从英文解释或中文全称看就比较容易理解。指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针数组指针:a pointer to an array,即指向数组的指针还要注意的是他们用法的区别,下面举例说明。in转载 2016-04-01 12:33:47 · 231 阅读 · 0 评论 -
c语言字符数组与字符串的使用详解
1、字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。char str[10]={ 'I',' ','a','m',' ',‘h','a','p','p','y'};即把10个字符分别赋给str[0]到str[9]10个元素如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定转载 2016-04-01 11:51:53 · 319 阅读 · 0 评论 -
const修饰符
int main() { const int a; // int const b; const int *c; int * const d; const int const *e ;return 0; }Int func1(const ) 初级理解:const是定义常量==》const意味着只读 含义: //第一个第二个意思一样 代表一个常整形数 //第三个 c是一个指向常整形转载 2016-12-21 19:43:30 · 312 阅读 · 0 评论