地址与内存关系

计算机的内存看作是一排很长很长的房子,每个房子都可以放数据,通过一个房号来标识。
这个比喻颇为有用,也存在局阻性。计算机的内存由数以亿万计的位(bit)组成,每个位可以容纳值0或1.由于一个位所能表示的值的范出太有限,所单独的位用处不大,通常许多位合成一组作为一个单位(比如最小8位,char类型),这样就可以存储范围较大的值。画个图来描述机器中的内存位置。

继续阅读地址与内存关系

用指针求数组中间位置

两个指针一个指向数组的头部,另一个指向数组的尾部。求数组中间位置?

这个用指针的算术运算就可以完成,用尾部指针减去头部指针,再除以2就可以。不过有一点要注意数组要是奇数才有中间位置,例如:1   2  3  4  5  6   7    中间是4。 继续阅读用指针求数组中间位置

指针的指针做输入参数代替二维数组

指针的指针做输入参数代替二维数组?

有时在写程序是会碰到定义函数输入参数要一个二维数组,但并不能确定数组内的元素个数时,这种情况可以用指针的指针做输入参数解决问题。 继续阅读指针的指针做输入参数代替二维数组

死循环用途,检查代码中内存泄漏

死循环用途,检查代码中内存泄漏

死循环就是一直循环下去, 如 while(true)    for(;;),一般正常编程的时候很少会用到。

都知道死循环是非常不好的,会让程序崩溃。哪死循环真的没有用途吗? 继续阅读死循环用途,检查代码中内存泄漏

数组与指针间的关系

数组在内存中就指一段连续的内存,但C++提供了一种快捷表示,定义数组名可以等价于该数组的首地址。

int  a[5] = {0};  定义整型数组,获取首地址可以有两个写法了,取址符:&a[0],   数组名: a 继续阅读数组与指针间的关系