[编程开发] 由指针传参引发的一点分析 昨天有同学(初学指针)在练习单链表和二叉树的时候,程序老是崩溃,或者得不到正确结果,于是向我求助。问题就出在指针的参数传递上,没传好指针导致内存混乱,其他代码基本全对。这个错误十分可惜。故在此我想做个记录,可能显得十分基础。如果函数的参数是普通的一级指针,那么就意味着你只能使用指针、改变指针指向或者改变指向的目标变量。不嫩试图通过这个指针来申请内存。void getMemory(int
[编程语言] 堆和栈的全面总结 操作系统中的栈: 由编译器自动分配和自动释放,一个函数对应一个栈,用于存放函数的参数值、函数调用完成后的返回值和函数体内的局部变量等。栈占用连续的一段内存空间,其操作和组织方式与数据结构中的栈十分相似。栈是为了执行线程留出的内存空间。当调用函数时创建栈,当函数执行完毕,栈就被回收了。操作系统中的堆: 由程序员手动进行内存的申请与释放。由于程序员手动申请及释
[笔试题] 阿里巴巴2013技术类笔试题(完整版手工记录+详细解析) 一、单选题(每题2分,共20分)1. -7的二进制补码表示为:A. 01111000 B. 01111001 C. 11111000 D. 11111001解析:正数的原码反码补码均相同,负数反码为除符号位外反转各个二进制位,补码为反码+1.-7的原码:10000111-7的反码:11111000-7的补码:111110
[2013百度软件研发笔试题] 求字符串中连续出现相同字符的最大值 题目完整描述为:用递归的方式实现一个求字符串中连续出现相同字符的最大值,如aaabbcc,连续出现a的最大值为3,abbc,连续出现字符最大的值为2。以下是我想出来的方法:#include using namespace std;#define MAX(a, b) (a) > (b) ? (a) : (b)int Get(char *s, int n, int m) /
15个使用频率极高的基础算法题(附完整代码) 合并排序,将两个已经排序的数组合并成一个数组,其中一个数组能容下两个数组的所有元素一般来说,合并两个已经有序的数组,首先是开一个能存的下两个数组的第三个数组,但是题目中已经说了,其中一个数组能全部存的下,显然就不应该浪费空间了。从前往后扫的话,数据要存在大数组的前头,这样每次要把大数组的元素一次后移一位,显然不是什么好主意,所以我们从后往前存。#include#include
我所遵守的11条数据库设计准则 前言:作者Shivprasad koirala,前微软ASP/ASP.NET的MVC工程师,现于印度任CEO职位。学生初次翻译,如有不妥,不吝赐教。简介在你开始阅读这篇文章之前,我要先告诉你我不算是数据库设计方面的什么大师。下面的11条准则,是我从项目、从我自身的经验和我自己的理解和学习中得来的。我个人认为在数据库设计方面运用这些准则能使我受益匪浅。我也欢迎任何批评与指点。
C语言其实不简单:数组与指针 之前在写C的时候,没怎么留意数组,就这么定义一个,然后颠来倒去的使用就行了。不过后来碰到了点问题,解决后决定写这么一篇博客,数组离不开指针,索性就放一起好了。现在我定义了一个数组:int cc[10];围绕这个数组有好几种指针:cc, cc+1, &cc[0], &cc, &cc+1等等。你知道它们都是什么含义吗?试试运行以下带代码:#include int main(){
2014年IT互联网行业薪酬待遇【转载】 一、民企1.百度 13k*14.6,special 14~17k*14.6 开发类 13K*14.6 (2014) 测试类、前端类 12K*14.6 (2014)2.腾讯 11.5k*16,special 12~14k*16 技术类研究生 11.5K*16 (2014) 终端开发本科生 10K*16
[微软面试题] 在排序数组中,找出给定数字的出现次数 #includeusing namespace std;int num[5] = {1, 2, 2, 2, 3};int search(int x){ int i = 0, j = 5; int mid = (i+j) >> 1; while(num[mid] ^ x) { if(num[mid] > x) j = mid; else i = mid;
[练习题] 找出1-100中缺失的两个数 现在有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98].要求写一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这两个数。注意:程序不用实现自然数随机放入数组的过程。
经典智力题:火车运煤 你是一个煤老板,你在矿区开采了3000吨煤,需要运送到市场上去卖,从你的矿区到市场有1000公里,你手里有一列以煤为动力的火车,这个火车一次最多能运1000吨煤,火车每公里消耗一吨煤。问如何运送才能运最多的煤到集市?
Windows编程革命简史 源文:A Brief History of Windows Programming Revolutions (Ron Burk)首先,是 Windows API 和 DLL Hell。(译注:DLL Hell——DLL灾难,就是微软的DLL升级时因为不同版本可能造成应用程序无法运行的灾难,首当其冲的是COM编程,相信大家都知道某些木马或是病毒更改了一些系统的DLL可以导致整个Windows
[模板] 大数相乘模板 #include#include#includeusing namespace std;#define MAXN 100#define pi acos(-1.0)struct digt { double r; double i;};digt bitRecv[2*MAXN];digt va[MAXN*2],vb[2*MAXN];int ans[MAXN*2]