
编程之路
文章平均质量分 73
ysuncn
fighting
展开
-
堆、栈、自由存储区、全局/静态存储区和常量存储区
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。 自由存储区转载 2007-10-26 00:10:00 · 1238 阅读 · 0 评论 -
百度面试题——蚂蚁爬杆答案
from:ysuncn看了百度的题,不少人给了解法,有兴趣编了一下,大概一个小时,写成C++凑个热闹,非常之不标准,见笑,看看算法吧————————————————:)有一根27厘米的细木杆,在第3厘米、7厘米、11厘米、17厘米、23厘米这五个位置上各有一只蚂蚁。 木杆很细,不能同时通过一只蚂蚁。开始 时,蚂 蚁的头朝左还是朝右是任意的,它们只会朝前走或调头, 但不会后退。当任意两只蚂蚁碰头时,原创 2007-10-25 20:46:00 · 3433 阅读 · 3 评论 -
指针 数组 声明
int (**a)[10] —— a是二级指针(指向一维数组指针的指针),数组元素为整型;int *(*b)[10] —— b是指向一维数组的指针,数组元素为指向整型的指针;int **c[10] —— c是一个数组,数组元素为二级指针(指向整型指针的指针)。原创 2007-09-28 09:58:00 · 1015 阅读 · 0 评论 -
递归函数的复杂度分析zz
一.前言 递归函数的主要思想是将一个问题分拆为几个子问题(问题大小减少),分别解决这些子问题,再将得到的结果组合起来。所以,递归函数的复杂度包括分拆问题的代价,组合结果的代价(统称称为非递归代价)和解决子问题的代价(递归复杂度)。 递归函数的复杂度分析主要是通过递归方程和递归树进行分析的。首先,将一个递归函数的复杂度表示成递归方程的形式,然后通过数学计算或递归树分析,得到递归函数的转载 2007-10-22 23:59:00 · 2089 阅读 · 0 评论 -
2008百度笔经——2007/10/22
from:ysuncn 2007/10/22百度笔试归来。南大科技馆,百度的招聘真是全民动员,不可不谓声势浩大。可怜我们都在外边等。不知道里边在干什么,还好有哥门儿把我们指引到202教室。看出来百度是第一年现场笔试:很混乱(怎么也多几个学校一起笔啊)、没有时间观念(都在科技馆high了)。20:15-22:15六道题目:前四道必做,后两道选一。1、字符串安全拷贝挑错,看过while(*dst++=原创 2007-10-22 23:45:00 · 1088 阅读 · 0 评论 -
C++面试题zz
前几天参加了一个公司的面试,做了一份C++的面试题,回来后发现是一本书上的原题,故特此将题目和标准答案找出发了上来,供大家参考。 附录B :C++/C 试题本试题仅用于考查C++/C 程序员的基本编程技能。内容限于C++/C 常用语法,不涉及数据结构、算法以及深奥的语法。考试成绩能反映出考生的编程质量以及对C++/C 的理解程度,但不能反映考生的智力和软件开发能力。笔试时间90 分转载 2007-10-21 09:31:00 · 2526 阅读 · 2 评论 -
C/C++如何解决大数组问题?
编了一晚上的程序,结果因为数组太大不能运行:segmentation…… 取找解决方法:这个比较适用!赞 方法一: 在VC的Project setting里的link选项卡里把栈开大一点(windows里默认是4M) 方法二: 声明成全局或stati转载 2007-09-23 05:52:00 · 24277 阅读 · 0 评论 -
不用递归——用栈——实现先序遍历二叉树的算法
想了半天,还没想出来,真弱。G了一圈,看到答案,哎!更弱,很简单……”算法:用堆栈实现 创建堆栈 把根节点压入堆栈 当堆栈不为空时,循环 弹出一个节点 如果这个节点不是NULL 输出该值 把这个节点的右节点压入堆栈 把这个节点的左节点压入堆栈 void PreOderTranv原创 2007-09-20 12:09:00 · 3966 阅读 · 0 评论 -
递归函数内部的原理????不要跟我讲自己调用自己这样的话,我一分也不给你的zz
楼主wormemory(绿茶)2002-06-13 12:52:41 在 C/C++ / C语言 提问 递归函数内部的原理????不要跟我讲自己调用自己这样的话,我一分也不给你的, 我要知道的是,系统是不是一定会建一个栈区,或者说为什么一定要建栈,系统是怎么来实现的,或者说系统是根据什么来建栈,他(系统)怎么会知道我那个就是递归函数而不是其他什么东西之类,系统是怎么实现的,每一部转载 2007-09-21 02:14:00 · 3051 阅读 · 0 评论 -
深入理解递归函数的调用过程
下面是个关于递归调用简单但是很能说明问题的例子:/*递归例子*/#includevoid up_and_down(int);int main(void){ up_and_down(1); return 0;}void up_and_down(int n){ printf("Level %d:n location %p/n",n,&n); /* 1 */ if(n up_an转载 2007-09-21 02:09:00 · 12558 阅读 · 2 评论 -
学习笔记:什么是设计模式?
模式模式(patterns)这个词,来自Christopher Alexander的 The Timless way of Building。“质 量是客观的么?”从这个问题出发,Alexander开始思考,优秀的设计和糟糕的设计之间,到底存在怎样的差别?或者说,优秀的设计包含了什么?糟糕的 设计又包含了什么?在进行了许多观察和研究之后,Alexander发现,优秀的设计结构,尽管千差万别,但具有转载 2007-09-17 14:46:00 · 1580 阅读 · 0 评论 -
C语言中的整数自动转换原则
有符号数与无符号数之间运算问题以下实验均在virual c++6中运行通过这个问题测试是否懂得C语言中的整数自动转换原则,有些开发者懂得极少这些东西。当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。因此,从这个意义上讲,无符号数的运算优先级要高于有符号数,这一点对于应当频繁用到无符号数据类型的嵌入式系统来说是丰常重要的。 首先进行一个实验,分别定义一个signed int转载 2007-09-16 15:19:00 · 3030 阅读 · 0 评论 -
C/C++ 程序设计员应聘常见面试试题深入剖析(1)
1.引言 本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。 许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strcpy函数都可看出面试者在技术上究竟达到了怎样的程度,我们能真正写好一个strcpy函数吗?我们都觉得自己能,可是我们写出的strcpy转载 2007-09-13 23:40:00 · 1174 阅读 · 0 评论 -
内存泄漏解决之道 zz
摘要 虽然Java虚拟机(JVM)及其垃圾收集器(garbage collector,GC)负责管理大多数的内存任务,Java软件程序中还是有可能出现内存泄漏。实际上,这在大型项目中是一个常见的问题。避免内存泄漏的第一步是要弄清楚它是如何发生的。本文介绍了编写Java代码的一些常见的内存泄漏陷阱,以及编写不泄漏代码的一些最佳实践。一旦发生了内存泄漏,要指出造成泄漏的代码是非常困难的。转载 2007-10-10 23:40:00 · 1145 阅读 · 0 评论 -
zz从最简单但又最绝妙的开始:strcmp
分析经典代码是一种最佳方式,将从最简单但又最绝妙的开始:strcmp int __cdecl strcmp ( const char * src, const char * dst ){ int ret = 0 ; while( ! (ret = *(unsigned char *)src转载 2007-11-02 11:30:00 · 960 阅读 · 1 评论 -
查看子目录大小脚本
查看子目录大小脚本#/bin/sh## File: totalsize.sh# Use : show the size of the files and sub directories#if [ $# -gt 0 ]then echo "Usage: $totalsize.sh (Note: no arguments)" exitfibgntime=`date +%s` tmpv转载 2007-12-17 10:38:00 · 933 阅读 · 0 评论 -
C/C++ 笔试、面试题目大汇总
1.求下面函数的返回值( 微软)int func(x) { int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx; } 假定x = 9999。 答案:8思路:将x转化为2进制,看含有的1的个数。2. 什么是“引用”?申明转载 2007-09-16 20:19:00 · 1989 阅读 · 0 评论 -
华为笔试题含答案
华为从事通信网络技术与产品的研究、开发、生产与销售,是中国电信市场的主要供应商之一,并已成功进入全球电信市场。每年华为都要在各大高校招聘大批的应界生,特别是华中科技大学。公司网址是:http://www.huawei.com 下面据说是华为公司的笔试题,其实我想它一次笔试不可能出这么多题,也许是多年笔试题的合集,或者也包括了其他公司的笔试内容。最近国际商用工程集团(http://www.ibeg转载 2007-09-14 00:49:00 · 5523 阅读 · 7 评论 -
Linux C 函数参考之内存控制篇
calloc(配置内存空间) 相关函数 malloc,转载 2007-08-09 14:50:00 · 639 阅读 · 0 评论 -
浮点数表示及其实现
我两年前就知道不应该用==号来判断浮点数的相等了,因为存在一个精度的问题,但是一直以来,都没怎么在乎这些东西,而实际上,我对于浮点数的结构,虽然了解,但并不清晰. 作为一个C++爱好者,应该尽量搞清楚每一个问题,所以我搞清楚了浮点数的内在表示及实现.在没有大问题的情况下,一切以易于理解和记忆为标准.首先说一下原,反,补,移码. 移码其实就等于补码,只是符号相反. 对于正数而言,原,反,补码都转载 2007-08-10 12:47:00 · 986 阅读 · 0 评论 -
Linux C 函数参考之终端控制篇
getopt(分析命令行参数) 相关函数转载 2007-08-09 17:27:00 · 1043 阅读 · 0 评论 -
Linux C 函数参考之文件权限控制篇
access(判断是否具有存取文件的权限) 相关函数转载 2007-08-09 17:11:00 · 1218 阅读 · 0 评论 -
Linux C 函数参考之文件内容操作篇
clearerr(清除文件流的错误旗标) 相关函数 f转载 2007-08-09 16:49:00 · 650 阅读 · 0 评论 -
Linux C 函数参考之用户组篇
endgrent(关闭组文件) 相关函数转载 2007-08-09 16:33:00 · 1370 阅读 · 0 评论 -
Linux C 函数参考之字符测试篇
isalnum(测试字符是否为英文或数字) 相关函数转载 2007-08-09 14:39:00 · 1063 阅读 · 0 评论 -
Linux C 函数参考之环境变量篇
getenv(取得环境变量内容) 相关函数 puten转载 2007-08-09 17:25:00 · 890 阅读 · 0 评论 -
Linux C 函数参考之接口处理篇
accept(接受socket连线) 相关函数 soc转载 2007-08-09 17:23:00 · 799 阅读 · 0 评论 -
Linux C 函数参考之信号处理篇
alarm(设置信号传送闹钟) 相关函数 signal转载 2007-08-09 17:16:00 · 1224 阅读 · 0 评论 -
Linux C 函数参考之数据结构及算法篇
crypt(将密码或数据编码) 相关函数 getpas转载 2007-08-09 16:36:00 · 847 阅读 · 0 评论 -
Linux C 函数参考之内存及字符串操作篇
bcmp(比较内存内容) 相关函数 bcmp,st转载 2007-08-09 16:02:00 · 749 阅读 · 0 评论 -
Linux C 函数参考之字符串转换篇
atof(将字符串转换成浮点型数)转载 2007-08-09 14:46:00 · 983 阅读 · 0 评论 -
Linux C 函数参考之日期时间篇
asctime(将时间和日期以字符串格式表示)转载 2007-08-09 14:55:00 · 907 阅读 · 0 评论 -
Linux C 函数参考之文件操作篇
close(关闭文件) 相关函数 open,fcntl转载 2007-08-09 16:44:00 · 759 阅读 · 0 评论 -
C/C++语言中指向函数的指针
在C语言中,函数本身不是变量,但可以定义指向函数的指针,这种指针可以被赋值、存放于数组之中,传递给函数及作为函数的返回值等” --《The C Programming Language Second Edition》 下面给出几个简单的例子来说明指向函数的指针。 第一个例子说明指向函数的指针如何说明、赋值、调用。 #include #define TESTDATE 100 int func(转载 2007-09-13 23:24:00 · 833 阅读 · 0 评论 -
最全的C/C++面试题解(1)
嵌入式开发.C语言面试题预处理器(Preprocessor)1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将为你计算常数表达式的值,因此,转载 2007-09-13 00:45:00 · 1648 阅读 · 1 评论 -
详细讲解 什么是设计模式
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。 GoF的“设计模式”是第一次将设计模式提升到理转载 2007-09-17 14:30:00 · 854 阅读 · 0 评论 -
volatile 实例讲解
volatile的本意是一般有两种说法--1.“暂态的”;2.“易变的”。 这两种说法都有可行。但是究竟volatile是什么意思,现举例说明(以Keil-c与a51为例 例子来自Keil FQA),看完例子后你应该明白volatile的意思了,如果还不明白,那只好 再看一遍了。 例1. void main (void) { volatile int i; int j; i = 1; //1转载 2007-09-16 14:34:00 · 1042 阅读 · 0 评论 -
C/C++ 程序设计员应聘常见面试试题深入剖析(3)
试题6:已知WAV文件格式如下表,打开一个WAV文件,以适当的数据结构组织WAV文件头并解析WAV格式的各项信息。 WAVE文件格式说明表 偏移地址 字节数 数据类型 内 容转载 2007-09-13 23:43:00 · 1055 阅读 · 0 评论 -
C/C++ 程序设计员应聘常见面试试题深入剖析(2)
3.内功题 试题1:分别给出BOOL,int,float,指针变量 与“零值”比较的 if 语句(假设变量名为var) 解答: BOOL型变量:if(!var) int型变量: if(var==0) float型变量: const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x 指针变量: if(var=转载 2007-09-13 23:42:00 · 986 阅读 · 0 评论 -
Java常见面试题集--面试题全面综合(三)
1、面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继转载 2007-09-13 01:26:00 · 1118 阅读 · 0 评论