![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 79
zmldlut
学生
展开
-
二叉树
从来没在CSDN上面写过什么,今天就写一点吧。这是我同学让我做的一道题,有关二叉树的。基本上是二叉树的先序,中序,后序的递归非递归算法。让我感到为难的是他让我必须用C语言编写。 #include#include #include#include#define MaxSize 100//#include//#include//node structure cons原创 2009-12-30 23:36:00 · 980 阅读 · 0 评论 -
向NS2中添加新的无线移动网络路由协议
按照[1]所述,添加新的路由协议之后,很多人问为什么总有“debug_”未定义的错误?这主要是因为没有将移动节点的新路由协议与队列关联起来。关联的过程实际上就是路由协议类通过 TclObject::lookup()获得队列的指针。1.Packet type declarationcommon/packet.h1: enum packet_t {2: PT_TCP,3:转载 2012-03-19 09:00:15 · 850 阅读 · 0 评论 -
C语言编译全过程
编译的概念:编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序。 编译的完整过程:C源程序-->预编译处理(.c)-->编译、优化程序(.s、.asm)-->汇编程序(.obj、.o、.a、.ko)-->链接程序(.exe、.elf、.axf等)1. 编译转载 2012-10-10 11:01:53 · 651 阅读 · 0 评论 -
多线程并发题目
多线程并发题目 又一个全局变量tally,和两个线程并发执行(代码段都是ThreadProc):问连个线程都结束后,tally取值范围int tally=0;//glablevoid ThreadProc(){for(int i=1;itally+=1;}//end正确答案是50-1001:tolly += 1 可以转载 2012-06-04 17:56:12 · 643 阅读 · 0 评论 -
C/C++头文件一览
C、传统 C++#include //设定插入点#include //字符处理#include //定义错误码#include //浮点数处理#include //文件输入/输出#include //参数化输入/输出#include //数据流输入/输出#include //定义各种数据类型最值转载 2012-02-19 16:16:01 · 395 阅读 · 0 评论 -
c++中冒号(:)和双冒号(::)的用法和c/c++ 位域结构体
1.冒号(:)用法(1)表示结构体内 位域的定义(即该变量占几个bit空间)typedef struct _XXX{ unsigned char a:4; unsigned char c;}XXX;(2)构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。转载 2012-02-19 13:34:06 · 500 阅读 · 0 评论 -
数据区,代码区,堆栈区,操作系统堆栈
堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。转载 2012-10-10 11:00:40 · 1107 阅读 · 0 评论 -
SDK和MFC的区别
SDK 就是Software Development Kit 软件开发包MFC 就是Microsoft Foundation Classes 微软函数类库MFC是对API函数的封装,也算是vc里的SDK用VC编写Windows程序有两种:1. Windwos c方式(SDK),2.C++方式:即对SDK函数进行包装,如VC的MFC,BCB的OWL等。SDK编程就是直接调用W转载 2012-10-31 09:40:12 · 577 阅读 · 0 评论 -
是i++在两个线程里边分别执行100次,能得到的最大值和最小值分别是多少?
是i++在两个线程里边分别执行100次,能得到的最大值和最小值分别是多少?i++只需要执行一条指令,并不能保证多个线程i++,操作同一个i,可以得到正确的结果。因为还有寄存器的因素,多个cpu对应多个寄存器。每次要先把i从内存复制到寄存器,然后++,然后再把i复制到内存中,这需要至少3步。从这个意义上讲,说i++是原子的并不对。 如此,假设两个线程的执行步骤如下:转载 2012-11-24 15:06:10 · 3777 阅读 · 0 评论 -
bsearch
函数名: bsearch 功 能: 二分法搜索 用 法: void *bsearch(const void *key, const void *base, size_t nelem, size_t width, int(*fcmp)(const void *, const *)); 语法: #include stdlib.h>void *bsearch( const转载 2012-03-15 10:55:54 · 579 阅读 · 0 评论 -
几道经典的嵌入式C语言笔试题
C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为带面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。 从被面试者的角度来讲,你能了解许多关于出题者或监考者的情况。这个测试只是出题者为显示其对ANSI标准细节的知识而不是技术技巧而设计吗?这个愚蠢的问题吗?如要你答出某个字转载 2012-02-19 14:06:04 · 492 阅读 · 0 评论 -
统计程序运行时间
#include #include using namespace std; void main() { LARGE_INTEGER Freq; LARGE_INTEGER Count1, Count2; QueryPerformanceFrequency(&Freq); //调用API函数, 这个API函数可是原创 2012-06-10 09:30:53 · 366 阅读 · 0 评论 -
二聚物问题与组合数学
曾经在一本书上看到过一个铺瓷砖问题,大意是: 能否用1 2的瓷砖覆盖N M的地板? 书上给出了解答: 1. 如果N=1,M为偶数,显然1 2的瓷砖可以覆盖N M的地板。 2. 如果N M为奇数,即N和M都为奇数,则肯定不能用1 2的瓷砖去覆盖。( N M不被1 2=2整除) 3. 如果N和M中至少有一个偶数,不妨设M为偶数,那么既然可以用1转载 2012-10-10 13:12:28 · 797 阅读 · 0 评论 -
一道华为面试题
有两个序列a,b,大小都有n,序列元素的值任意整数,无序;要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b无素的和]之间的差最小。例如: var a = [100, 99, 98, 1, 2, 3];var b = [1, 2, 3, 4, 5, 40];package com.tourism;import java.util.Collecti转载 2012-05-17 09:45:50 · 691 阅读 · 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的个数转载 2012-02-19 16:08:56 · 356 阅读 · 0 评论 -
extern声明的使用心得
使用extern声明时,需要注意点,否则,编译会出错,特别是在一个文件中定义,在另一个文件中声明的情况下。 说下在一个文件中定义,在另一个文件中声明的情况,我是这种情况下出错过。此外,也将说下结构体变量作为函数参数的情况。 一、extern的使用事项: 在ADE78xx.h文件中定义了数据结构类型:ADE7878_Reg,在ADE7转载 2012-02-19 13:52:50 · 457 阅读 · 0 评论 -
STL Containers之map
#include #include using namespace std; int main (){ map::iterator it; map first; char c; first['a']=10; first['b']=30; first['c']=50; first['d']=70; first['e']=原创 2010-01-06 22:14:00 · 409 阅读 · 0 评论 -
ftime()函数取得目前的时间和日期。
相关函数:time, ctime, gettimeofday表头文件:#include 函数定义:int ftime(struct timeb *tp);函数说明:ftime()将目前日期由tp所指的结构返回。tp结构定义:struct timeb{ time_t time; /* 为1970-01-01至今转载 2012-02-19 13:24:08 · 780 阅读 · 0 评论 -
bzero
原型:extern void bzero(void *s, int n); 用法:#include 功能:置字节字符串s的前n个字节为零且包括‘\0’。 说明:bzero无返回值,并且使用strings.h头文件,strings.h曾经是posix标准的一部分,但是在POSIX.1-2001标准里面,这些函数被标记为了遗留函数而不推荐使用。在POSIX.1-2008标准里已经没转载 2012-03-15 10:47:22 · 4768 阅读 · 0 评论 -
Sizeof与Strlen的区别与联系(转)
1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。sizeof还可以用函数做参数,比如: short f();printf("%d\转载 2013-11-04 10:18:15 · 447 阅读 · 0 评论