随笔分类 -  C、C++

1
内存管理
摘要:1.内存分配的三种方式 (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3) 从堆上分配,亦称动态内存分配。程序在运行的时... 阅读全文
posted @ 2007-05-08 09:40 左左右右 阅读(290) 评论(0) 推荐(0)
杂题
摘要:1.什么是二分查找排序,写出过程2.对一个单链表如何插入、删除3.函数指针是什么4.写出一个单链表的节点结构5.什么叫做字符数组越界6.new、malloc的区别7.堆栈的区别8.静态变量、局部变量、全局变量的区别9.数据库,多表查询、主键、外键10.写一个程序遍历二叉树11.com的线程模型 C++与C#的区别: C++支持多继承,C#只支持单一继承; C++可适合任何平台开发,C#只适... 阅读全文
posted @ 2007-04-27 10:03 左左右右 阅读(292) 评论(0) 推荐(0)
win32程序观念
摘要:关键词语:message based, event driven, multitasking, multithreading, console programming消息基础, 事件驱动,多任务,多线程,控制台程序以消息为基础,以事件驱动之(message based, event driven)每一个Windows 程序都应该有一个回路如下:MSG msg;while (GetMessage(&... 阅读全文
posted @ 2007-04-25 13:12 左左右右 阅读(562) 评论(0) 推荐(0)
C++ 里的 new 和 malloc
摘要:create instance(object) should use new, or it will not call the constructor methodmalloc is used to malloc memory for pointer(structure, char, int and so on), not for class 阅读全文
posted @ 2007-04-19 09:31 左左右右 阅读(190) 评论(0) 推荐(0)
sizeof
摘要:http://dev.csdn.net/Develop/article/42/42446.shtm http://www.blogjava.net/majianan/archive/2006/08/20/64664.html 阅读全文
posted @ 2007-04-17 14:37 左左右右 阅读(181) 评论(0) 推荐(0)
编程题目
摘要:1) 写一个函数计算当参数为n(n很大)时的值 1-2+3-4+5-6+7......+n long fn(long n) { long temp=0; int i,flag=1; if(n 0); exit(1); } for(i=1;i 0); exit(1); } whi... 阅读全文
posted @ 2007-04-13 14:10 左左右右 阅读(318) 评论(0) 推荐(0)
堆栈
摘要:问题: 请对堆栈这种数据结构做出评论。用c 语言来实现一个堆栈,你可以选用链表或动态数组来实现你的堆栈;并请对你的决定做出解释。你为堆栈设计的程序接口必须完备、规范、和易于使用。分析:这到题考察三个方面:1)对基本的抽象数据结构(堆栈)和底层数据结构(链表和动态数组)的理解和掌握程度;2)用编程语言实现和处理这些数据结构的能力;3)为一组相关例程设计一套规范化程序接口的能力。解答:堆栈是一种重要的... 阅读全文
posted @ 2007-04-09 21:16 左左右右 阅读(428) 评论(0) 推荐(0)
深入理解Linux的系统调用
摘要:一、 什么是系统调用 在Linux的世界里,我们经常会遇到系统调用这一术语,所谓系统调用,就是内核提供的、功能十分强大的一系列的函数。这些系统调用是在内核中实现的,再通过一定的方式把系统调用给用户,一般都通过门(gate)陷入(trap)实现。系统调用是用户程序和内核交互的接口。 二、 系统调用的作用 系统调用在Linux系统中发挥着巨大的作用,如果没有系统调用,那么应用程序就失去了内... 阅读全文
posted @ 2007-04-09 09:30 左左右右 阅读(390) 评论(0) 推荐(0)
c语言之循环链表
摘要:http://student.zjzk.cn/course_ware/data_structure/web/xianxingbiao/xianxingbiao2.3.2.htm注意: 判断空链表的条件是head==head->next;注意: ①循环链表中没有NULL指针。涉及遍历操作时,其终止条件就不再是像非循环链表那样判别p或p->next是否为空,而是判别它们是否等于某一指定... 阅读全文
posted @ 2007-04-08 23:06 左左右右 阅读(1179) 评论(0) 推荐(0)
c语言之双向链表
摘要:typedef struct node{int data; /*数据域*/struct node *llink,*rlink; /*链域,*llink是左链域指针,*rlink是右链域指针*/}JD;插入 对于双向循环链表,我们现在可以随意地在某已知结点p前或者p后插入一个新的结点。 假若s,p,q是连续三个结点的指针,若我们要在p前插入一个新结点r,则只需把s的右链域指针指向r,r的左链域指... 阅读全文
posted @ 2007-04-08 23:00 左左右右 阅读(1475) 评论(1) 推荐(0)
c语言之单链表
摘要:1.c语言对一个整数链表的类型声明:typedef struct elementT{ int data; struct elementT *next;}element;2.头指针的修改int Insert(element **head){ element *Newelem; Newelem = (element *)malloc(sizeof(element)); if(!Newel... 阅读全文
posted @ 2007-04-06 10:16 左左右右 阅读(379) 评论(0) 推荐(0)
C Runtime Library
摘要:运行期库是一个广泛的概念,可以认为是一套系统级的函数库,这些函数要么在后台被使用,比如进行程序的初始化和清理操作,要么是我们会直接调用到的,比如内存管理中的malloc、数学计算中的sqrt等,所谓运行期,就是在程序运行时使用,离开了它,我们的程序寸步难行. 在Windows平台下,C Runtime Library 的情况如下: ... 阅读全文
posted @ 2007-04-05 10:30 左左右右 阅读(491) 评论(0) 推荐(0)
c经典题
摘要:出处 :http://www.ad0.cn/netfetch/article.asp?id=534 http://www.ad0.cn/netfetch/article.asp?id=583 阅读全文
posted @ 2007-04-02 22:32 左左右右 阅读(240) 评论(0) 推荐(0)
C语言之Const
摘要:http://tag.csdn.net/Article/ea09701c-ce09-46c8-8ecd-bf39584ab8c1.html 阅读全文
posted @ 2007-03-29 13:00 左左右右 阅读(448) 评论(0) 推荐(0)
C语言之static静态变量
摘要:1. static 变量静态变量的类型 说明符是static。 静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量。 例如外部变量虽属于静态 存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。2. 静态局部变量静态局部变量属于静态存储方式,它具有以下特点:(1)静态局部变量在函数内定义 它的生存期为整个源程序,但是其作用域仍... 阅读全文
posted @ 2007-03-29 12:57 左左右右 阅读(21298) 评论(1) 推荐(7)
c语言之指针
摘要:文章出处:http://www.linux8.net/viewnews_2847.html1、指针的概念 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。先声明几个指针放着做例子:例一: ... 阅读全文
posted @ 2007-03-29 12:49 左左右右 阅读(449) 评论(0) 推荐(0)
c语言只预处理
摘要:所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作。 C语言提供了多种预处理功能,如宏定义、文件包含、 条件编译等。 宏定义 在C语言源程序中允许用一个标识符来表示一个字符串, 称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换, 这称为“宏代换”或“宏展开”。 在C语言中,“宏”分... 阅读全文
posted @ 2007-03-28 22:38 左左右右 阅读(388) 评论(0) 推荐(0)
嵌入式程序员应知道的几个基本问题
摘要:文章出处: http://linux.ccidnet.com/art/310/20061025/931699_1.html我把作者的文章精简了一下,着重点放在几个问题的答案上:) 预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)... 阅读全文
posted @ 2007-03-28 14:30 左左右右 阅读(308) 评论(0) 推荐(0)
memset ,memcpy 和strcpy 区别
摘要:strcpy 原型:extern char *strcpy(char *dest,char *src); 用法:#include 功能:把src所指由NULL结束的字符串复制到dest所指的数组中。 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 返回指向dest的指针。memcpy 原型:extern void *memcpy(v... 阅读全文
posted @ 2007-03-27 09:13 左左右右 阅读(1278) 评论(0) 推荐(0)
c++
摘要:http://blog.csdn.net/mobidogs/ 阅读全文
posted @ 2007-03-23 13:43 左左右右 阅读(153) 评论(0) 推荐(0)

1