深海的小鱼儿

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

随笔分类 -  c/c++

1 2 下一页

摘要:以NASM为例,软件安装完毕后,启动Windows操作系统的命令窗口,在安装目录(比如C:\Program Files\NASM)下运行nasm是ok的,但是在其他任意目录下运行nasm就会报错. 这意味着我们还不能使用nasm命令,这是因为:虽然我们以经安装了nasm,而安装目录下也包含了nasm这个命令,但计算机不知道去哪里去找这两个命令。但是我们如果说进入到nasm的安装目录,再依次运行n... 阅读全文
posted @ 2014-10-13 21:23 深海的小鱼儿 阅读(2625) 评论(0) 推荐(0) 编辑

摘要:在window下查看动态库的导出函数可以用vs自带的Dependenc工具; 查看静态库的信息要用命令行来实现: dumpbin /LINKERMEMBER Test.lib > lib.txt 上面的功能是将静态库的信息导出保存在lib.txt文件中,这样就可以在lib.txt文件中查看相关的信息了 阅读全文
posted @ 2014-10-13 20:53 深海的小鱼儿 阅读(2833) 评论(0) 推荐(0) 编辑

摘要:公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。 1. 公有继承(public) 公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。 2. 私有继承(private) 私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这个派生... 阅读全文
posted @ 2014-10-04 09:59 深海的小鱼儿 阅读(396) 评论(0) 推荐(0) 编辑

摘要:C和C++实务精选丛书[0].C和指针 C和C++实务精选丛书[1].C陷阱与缺陷 C和C++实务精选丛书[2].C专家编程 C和C++实务精选丛书[3].C和C++代码精粹 C和C++实务精选丛书[4].C++ 和面向对象的数值计算 C和C++实务精选丛书[5].C++Templates C和C++实务精选丛书[6].C++沉思录 C和C++实务精选丛书[... 阅读全文
posted @ 2011-12-25 18:35 深海的小鱼儿 阅读(547) 评论(0) 推荐(0) 编辑

摘要:写好C语言,漂亮的宏定义很重要,使用宏定义可以防止出错,提高可移植性,可读性,方便性 等等。下面列举一些成熟软件中常用得宏定义。。。。。。 1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 ... 阅读全文
posted @ 2011-11-26 22:04 深海的小鱼儿 阅读(1172) 评论(0) 推荐(2) 编辑

摘要:一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automati... 阅读全文
posted @ 2011-11-26 22:00 深海的小鱼儿 阅读(288) 评论(0) 推荐(0) 编辑

摘要:已知链表的头结点head,写一个函数把这个链表逆序 ( Intel) Node * ReverseList(Node *head) //链表逆序 { if ( head == NULL || head->next == NULL ) // 否则下面的就错了,一定要注意一些特定条件的判断,边界问题狠重要,软件开发要注意对异常分支的处理 // 三个指针的方式结构比较清晰 Node *p1 =... 阅读全文
posted @ 2011-11-21 22:09 深海的小鱼儿 阅读(754) 评论(0) 推荐(0) 编辑

摘要:VIA和EMC都曾经笔过这个试题 输入N, 打印 N*N 矩阵 比如 N = 3,打印: 1 2 3 8 9 4 7 6 5 N = 4,打印: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 /*螺旋矩阵*/ #include <stdio.h> #include <conio.h> #define RIGHT 0 #define D... 阅读全文
posted @ 2011-11-21 22:08 深海的小鱼儿 阅读(2288) 评论(0) 推荐(0) 编辑

摘要:找出两个字符串中最大公共子字符串,如"abccade"、"dgcadde"的最大子串为"cad" // 此题用for能控制循环,思路比下面的while更容易看懂 int GetCommon(char *s1, char *s2, char **r1, char **r2) { int len1 = strlen(s1); int len2 = strlen(s2); int maxle... 阅读全文
posted @ 2011-11-21 22:08 深海的小鱼儿 阅读(1892) 评论(1) 推荐(2) 编辑

摘要:写一个函数,完成内存之间的拷贝。[考虑问题是否全面,是否考虑内存重叠问题] 返回void *支持链式操作,参数类型是void *以支持任意类型的指针,输入参数加上const修饰,最好加上assert对输入输出指针进行非NULL判断 void* memcpy( void *dest, const void *src, size_t count ) { char* pdest = static... 阅读全文
posted @ 2011-11-21 22:06 深海的小鱼儿 阅读(3113) 评论(0) 推荐(0) 编辑

摘要:要求:不申请变量和空间 反转字符串 ,用一个函数实现。 异或^交换或者加减交换的典型应用! VIA 笔试题 基本思路:从 两头往中间做字符交换 。字符串最后一个字符是 '/0' ,表示结束,没有实际意义,可以将它 当作中间变量 ,等处理完成后,再将最后一个字符置 '/0' 即可 **********************************************************... 阅读全文
posted @ 2011-11-21 22:06 深海的小鱼儿 阅读(1561) 评论(0) 推荐(0) 编辑

摘要:矩力集成2008年校园招聘笔试题:动态申请一个二维数组存储图像阵列 传统的解决方案是分配一个指针数组, 然后把每个指针初始化为动态分配的 ``列"。 以下为一个二维的例子: //typedef int (*arraypoiter)[ncolumns]; int **dynamic_alloc_arrays(unsigned int nrows,unsigned int ncolumns) ... 阅读全文
posted @ 2011-11-21 22:05 深海的小鱼儿 阅读(700) 评论(0) 推荐(1) 编辑

摘要:矩力集成2008年校园招聘笔试题:动态申请一个二维数组存储图像阵列 传统的解决方案是分配一个指针数组, 然后把每个指针初始化为动态分配的 ``列"。 以下为一个二维的例子: //typedef int (*arraypoiter)[ncolumns]; int **dynamic_alloc_arrays(unsigned int nrows,unsigned int ncolumns) ... 阅读全文
posted @ 2011-11-21 21:59 深海的小鱼儿 阅读(1213) 评论(0) 推荐(0) 编辑

摘要:×××××××××××××××××××××××××××××××××× 统计一个字符串中所有字符出现的次数 基本思路:建立一个访问标志数组,初始化为访问次数0,每访问一次,将其增1: static int count[128]; 遍历字符串数组,每次读取一个字符 阅读全文
posted @ 2011-11-21 21:58 深海的小鱼儿 阅读(1483) 评论(1) 推荐(1) 编辑

摘要:一语句实现x是否为2的若干次幂的判断 #define is2*n(x) ((x & (x - 1))? 0 : 1) int main(void) { int m = 512; cout << ((m & (m - 1)) ? false : true) << endl; //即当m中只有一位为1时,才为若干次幂值 //若有两个及以上1,则(m & (m - 1))不为0,输出0,表... 阅读全文
posted @ 2011-11-21 21:57 深海的小鱼儿 阅读(298) 评论(0) 推荐(1) 编辑

摘要:Baidu和EMC的笔势题:对任意输入的正整数N,编写C程序求N!的尾部连续0的个数,并指出计算复杂度。如:18!=6402373705728000,尾部连续0的个数是3。(不用考虑数值超出计算机整数界限的问题) 思路分析: 本题要用数学的方法来解决效率最高,连续K个0,则说明是10^K的倍数,即(2×5)^ K= 2^K× 5^K;待求的数为N*(N-1)(N-2)………1,由于每两个数至少... 阅读全文
posted @ 2011-11-21 21:56 深海的小鱼儿 阅读(582) 评论(0) 推荐(0) 编辑

摘要:2009腾迅校园招聘笔试题:不使用中间变量求const字符串长度,即实现求字符串长度库函数strlen函数。函数接口声明如下:int strlen(const char *p); 思路分析: 在字符串中通常可以利用最后一个结束符’/0’,但此处参数为const,只读,那么我们不能打他的主意 函数运行过程中不占用内存基本不可能,除非都使用了寄存器。“不使用中间变量”只是说程序员不能显示的申请内... 阅读全文
posted @ 2011-11-21 21:56 深海的小鱼儿 阅读(1201) 评论(1) 推荐(3) 编辑

摘要:华为笔试题:写一个程序, 要求功能:求出用1,2,5这三个数不同个数组合的和为100的组合个数。如:100个1是一个组合,5个1加19个5是一个组合。。。。 答案:最容易想到的算法是: 设x是1的个数,y是2的个数,z是5的个数,number是组合数 x+2*y+5*z = 100 求这个方程解的个数number 注意到0<=x<=100,0<=y<=50,0<=z=20,所以可以编程为:... 阅读全文
posted @ 2011-11-21 21:55 深海的小鱼儿 阅读(441) 评论(0) 推荐(0) 编辑

摘要:今天老大让我针对一个面试者出些嵌入式方面的面试题,主要是想对他的技术深度进一步了解。我就出了下面这些问题,每个问题背后都是考察一个嵌入式程序员应该具备的相关技能。当然这些只是我的个人理解,不一定正确。在此与大家分享,只是希望朋友们能够得到一点点启发:如何抓住每一个契机展现你的与众不同? 同样的技术问题,很多人可能都能够回答得对,但有些人只是知其然而不知所以然。其实面试官每一个问题背后通常都隐藏着... 阅读全文
posted @ 2011-11-21 21:53 深海的小鱼儿 阅读(782) 评论(0) 推荐(0) 编辑

摘要:思科和横河电机面试题。通过一次遍历找到单链表中倒数第n个节点,链表可能相当大,可使用辅助空间,但是辅助空间的数目必须固定,不能和n有关。 单向链表的特点是遍历到末尾后不能反向重数N个节点。因此必须在到达尾部的同时找到倒数第N个节点。 不管是顺数n个还是倒数n个,其实都是距离-标尺问题。标尺是一段距离可以用线段的两个端点来衡量,我们能够判断倒数第一个节点,因为他的next==NULL。如果我们用... 阅读全文
posted @ 2011-11-21 21:50 深海的小鱼儿 阅读(3392) 评论(0) 推荐(0) 编辑

1 2 下一页
点击右上角即可分享
微信分享提示