- 博客(63)
- 资源 (5)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 《C++编程思想》(Thinking in C++)部分精华提取
1、声明与定义:首先,必须知道“声明”和“定义”之间的区别,因为这两个术语在全书中会被确切地使用。“声明”向计算机介绍名字,它说,“这个名字是什么意思”。而“定义”为这个名字分配存储空间。无论涉及到变量时还是函数时含义都一样。无论在哪种情况下,编译器都在“定义”处分配存储空间。对于变量,编译器确定这个变量占多少存储单元,并在内存中产生存放它们的空间。对于函数,编译器产生代码,并为之分配存储
2012-07-20 11:09:54
1484
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 面试智力题精选
1、请把一盒蛋糕切成8份,分给8个人,但蛋糕盒里还必须留有一份。解答:面对这样的怪题,有些应聘者绞尽脑汁也无法分成;而有些应聘者却感到 此题实际很简单,把切成的8份蛋糕先拿出7份分给7人,剩下的1份连蛋糕盒一起分 给第8个人。 2、一群人开舞会,每人头上都戴着一顶帽子。帽子只有黑白两种,黑的至少 有一顶。每个人都能看到其他人帽子的颜色,却看不到自己的。主持人先让大家
2012-07-13 16:28:16
2105
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 C/C++面试题精选
选集一:一、请填写BOOL , float,指针变量与“零值”比较的 if语句。(10分)提示:这里“零值”可以是0, 0.0 , FALSE或者“空指针”。例如 int变量 n与“零值”比较的 if语句为:if ( n == 0 )if ( n != 0 ) 请写出 BOOL flag与“零值”比较的 if语句: 请写出 flo
2012-07-13 10:10:17
1106
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 汉诺塔问题解析
#include using namespace std;void move(char a,char b){ cout}void nuota(int n,char a,char b,char c){ if(n==1)move(a,c); else{ nuota(n-1,a,c,b); move(a,c); nuota(n-1,b,a,c); }
2012-05-20 18:46:42
3030
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 C++递归问题之三---0-1背包问题:给定两个值value和num,在1到num之间取值使这些数和为value,输出所有组合
#include using namespace std;int value,num;int *label;void Calc(int m,int n){ if(m return; if(m==n){ label[n]=1; for(int i=1;i cout label[n]=0; } label[n]=1; Calc(m-
2012-05-11 19:53:09
848
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 C++递归问题之二——n皇后问题:以四、八皇后为例,给定n个皇后要求将它们放在一个n维矩阵中,任意两个皇后不能出现在同一行、列、主副对角线上,输出具体的摆放方式
#include using namespace std;class Queen{public: Queen(){} Queen(int i):Qnum(i){} ~Queen(){} void SetQnum(int i){ Qnum=i; } void FindPos();private: enum{MAX=10}; int col[MAX
2012-05-04 23:50:14
11242
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 递归问题之一:给定一字符串,输出字符串中所有字符子串的各种组合形式,长度为一个字符到字符串的长度,忽略排序
#include using namespace std;enum{MAX=100};void SubString(char src[],char out[],int oi){ for(int i=0;i out[oi]=src[i]; int j=0; out[oi+1]='\0'; cout if(i SubString(src+1+i,o
2012-05-03 13:28:25
1036
转载 Oracle参数文件详解
--========================-->Oracle 参数文件--========================/*参数文件(10g中的参数文件) 主要用来记录数据库的配置文件,在数据库启动时,Oracle读取参数文件,并根据参数文件中的参数设置来配置数据库。 如内存池的分配,允许打开的进程数和会话数等。 两类参数文件: p
2013-10-24 21:22:06
1067
转载 MFC多线程编程详解之一
(一) MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外 的用户输入,响应用户及系
2012-12-24 14:01:39
1098
转载 红黑树
今天我们来介绍另一种平衡二叉树:红黑树(Red Black Tree),红黑树由Rudolf Bayer于1972年发明,当时被称为平衡二叉B树(symmetric binary B-trees),1978年被Leonidas J. Guibas和 Robert Sedgewick改成一个比较摩登的名字:红黑树。红黑树和之前所讲的AVL树类似,都是在进行插入和删除操作时通过特定操作保持
2012-12-20 16:32:12
655
转载 HTTP协议详解
转自:http://blog.csdn.net/gueter/archive/2007/03/08/1524447.aspxAuthor :Jeffrey引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不
2012-12-20 16:25:18
563
转载 MFC消息机制
一.引言 MFC的框架结构大大方便了程序员的编程工作,但是为了更加有效、灵活的使用MFC编程,了解MFC的体系结构往往可以使编程工作事半功倍。它合理的封装了WIN32 API函数,并设计了一套方便的消息映射机制。但这套机制本身比较庞大和复杂,对它的分析和了解无疑有助于我们写出更为合理的高效的程序。这里我们简单的分析MFC的消息响应机制,以了解MFC是如何对Windows的消息加以封装,方便
2012-11-27 16:57:08
630
转载 浅谈HTTP中Get与Post的区别
Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。 1.根
2012-10-18 21:44:56
557
转载 堆栈溢出问题
通过堆栈溢出来获得root权限是目前使用的相当普遍的一项黑客技术。事实上这是一个黑客在系统本地已经拥有了一个基本账号后的首选攻击方式。他也被广泛应用于远程攻击。通过对daemon进程的堆栈溢出来实现远程获得rootshell的技术,已经被很多实例实现。在windows系统中,同样存在着堆栈溢出的问题。而且,随着internet的普及,win系列平台上的internet服务程序越来越
2012-10-17 22:50:11
1404
转载 算法-求二进制数中1的个数
问题描述任意给定一个32位无符号整数n,求n的二进制表示中1的个数,比如n = 5(0101)时,返回2,n = 15(1111)时,返回4这也是一道比较经典的题目了,相信不少人面试的时候可能遇到过这道题吧,下面介绍了几种方法来实现这道题,相信很多人可能见过下面的算法,但我相信很少有人见到本文中所有的算法。如果您上头上有更好的算法,或者本文没有提到的算法,请不要吝惜您的代码,分享的时候,也
2012-10-09 15:14:34
754
原创 C/C++中memcpy与strcpy之间的区别
strcpy用于字符串间的拷贝,memcpy用于内存间的拷贝strcpy的原型:char * strcpy(char *dest,const char *src); 实现代码: char * strcpy(char *dest,const char *src){ while((*de
2012-09-19 22:27:54
1941
原创 C/C++中字符指针初始化问题
问题:#include using namespace std;void Trans(char *src,char *dest){; int i=0,j=0; for(i=0;i if(i==0){ if(src[i]>='A'&&src[i] else src[i]=src[i]-'a'+'A'; } else if(src[i-1]=='
2012-09-14 15:55:38
2810
转载 C++虚拟继承中对象内存的分布
虚拟继承为了避免上述Top类的多次继承,我们必须虚拟继承类Top(Top类成为虚基类,当在多条继承路径上有一个公共的基类,在这些路径中的某几条汇合处,这个公共的基类就会产生多个实例(或多个副本),若只想保存这个基类的一个实例,可以将这个公共基类说明为虚基类虚基类的主要作用: 虚基类主要解决多重继承时,基类被多次进程的问题 )。参考博客 多重继承_内存的分布:: http://blog
2012-08-31 11:29:09
1084
转载 如何实现数据从EXCEL表格导入到SQL Server
技术说明本文中的示例使用以下工具导入 Excel 数据:SQL Server 数据传输服务 (DTS)Microsoft SQL Server 2005 Integration Services (SSIS)SQL Server 链接服务器SQL Server 分布式查询ActiveX 数据对象 (ADO) 和 Microsoft OLE DB Provider f
2012-08-28 10:57:06
3699
原创 VS2008常见问题解决方法
常见问题:1、Error spawning 'cmd.exe'2、#import 时Cannot Open “msxml4.dll":no such file of directory解决方案:Options --> Projects and Solutions -->VC++ Directories 下的Executable files下添加$(SystemRoot)\Sys
2012-08-24 16:26:07
763
转载 C++虚函数表解析
前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使
2012-08-22 16:25:49
627
转载 VC++下使用ADO操作数据库的智能指针_ConnectionPtr、_RecordsetPtr、_CommandPtr的方法
(1)、引入ADO类123#import "c:\program files\common files\system\ado\msado15.dll" \ no_namespace \rename ("EOF", "adoEOF")(2)、初始化COM在MFC中可以用AfxOleInit();非M
2012-08-21 11:43:37
28323
8
原创 OLEDB操作EXCEL
第一步:#import "C:\\Program Files\\Common Files\\System\\ADO\\msado15.dll" no_namespace rename("EOF","adoEOF")_ConnectionPtr m_pConnection;_RecordsetPtr m_pRecordset;::CoInitialize(NULL); //初始化COM,
2012-08-21 10:35:33
2609
转载 mysql中字符集问题
MySQL的字符集支持(Character Set Support)有两个方面: 字符集(Character set)和排序方式(Collation)。对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。1.MySQL默认字符集 MySQL对于字符集的指定可以细化到
2012-08-19 16:30:36
944
原创 Unicode编码的字块,Unicode不同范围对应的不同语言的字符集
Unicode 文字块:Basic Latin基本拉丁语0-127 ASCII 码,美式英语Latin-1 Supplement拉丁语补充-1126-255ISO Latin-1 前半部分结合Basic Latin 能处理丹麦语、荷兰语、英语、法罗群岛语、佛兰德语、德语、夏威夷语、冰岛语、印度尼西亚语、爱尔兰语、挪威语、葡萄牙语、西班牙语、斯瓦西里语和瑞典语La
2012-08-16 14:44:17
21599
1
转载 文字编码和Unicode
谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词这是一篇程序员写给程序员的趣味读物。所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级。整理这篇文章的动机是两个问题:问题一: 使用Windows记事本的“另存为”,可以在GBK、Unicode、Unicode big endian和UTF-8这几种编码方式间相互转换。同样是txt文
2012-08-15 09:33:21
34734
转载 MFC之Unicode编程
一、什么是Unicode 先从ASCII说起,ASCII是用来表示英文字符的一种编码规范。每个ASCII字符占用1个字节,因此,ASCII编码可以表示的最大字符数是255(00H—FFH)。其实,英文字符并没有那么多,一般只用前128个(00H—7FH,最高位为0),其中包括了控制字符、数字、大小写字母和其它一些符号。而最高位为1的另128个字符(80H—FFH)被称为“扩展ASCII”,一
2012-08-10 11:26:57
1949
转载 MFC支持UNICODE问题//cannot open file mfc42u.lib问题解决
1.想在MFC中使用Unicode 教科书上说要定义UNICODE和_UNICODE两个宏,前者用于windows.h,后者用于c运行期头文件,但是你会发现在你的程序中写:#ifndef UNICODE#define UNICODE#endif#ifndef _UNICODE#define _UNICODE#endif是没有用的!必须在Preprocessor
2012-08-10 10:16:18
2213
原创 Microsoft ADO(ActiveX Data Object)用法浅析
一、ADO简介 ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,请不必为此担心,即使你对OLE DB,COM不了解也能轻松对付ADO,因为它非常简单易用,甚至比你以往所接触的ODBC API、DAO、RDO都要容易使用,并不失灵活性。本文将详细地介绍在VC下如何使用
2012-08-08 11:00:36
4738
转载 [算法]不使用*、/、+、-、%操作符求一个数的1/3
问:在不使用*、/、+、-、%操作符的情况下,如何求一个数的1/3?(用C语言实现)第一种方法:使用位操作符并实现“+”操作// 替换加法运算符 int add(int x, int y) { int a, b; do { a = x & y; b = x ^ y; x = a y = b; } whi
2012-08-08 09:12:18
602
转载 MFC常用控件功能及用法
4.1 Button按钮窗口(控件)在MFC中使用CButton表示,CButton包含了三种样式的按钮,Push Button,Check Box,Radio Box。所以在利用CButton对象生成按钮窗口时需要指明按钮的风格。创建按钮:BOOL CButton::Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect,
2012-08-07 09:24:38
4384
转载 VC++读写XML文件
1、安装MSXML 4.0 SP2。在VC6中建立一个基于Dialog的工程。如图:在界面上放置3个编辑框、1个按钮控件。其中属性设置如下。编辑框:ID CategoryVariable TypeVariable NameIDC_IDValueCStringm_strIdIDC_AUTHORValue
2012-08-06 16:20:15
9254
原创 转义字符
所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。字符表 所有的转义字符和所对应的意义: 转义字符意义ASCII码值(十进制)\a响铃(BEL)007
2012-07-31 12:48:58
836
转载 Cannot open precompiled header file: 'Debug/****.pch': No such file or directory
环境:VC执行:编译程序问题描述:Cannot open precompiled header file: 'Debug/****.pch': No such file or directory我的解决方案可以使用右键点击项目工程中的该cpp文件,选择setting,在c/c++栏,选择PreCompiled headers,然后设置第一选项,选择不使用预编译头,解决这个问题。
2012-07-26 17:15:34
652
转载 堆与栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两
2012-07-18 08:38:16
363
原创 static用法浅析
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1、静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下: //Example 1#include
2012-07-17 21:13:36
462
转载 探寻计算机文件的本质
首先,让我们来回顾下你通常认为不值得一提的ASCII码表ASCII码一般分为三个部分:Non printable, system codes between 0 and 31.Lower ASCII(Standart ASCII), between 32 and 127. This part of the table (as shown below) originates
2012-07-16 10:55:01
1264
原创 java语言连接mysql数据库并利用XML解析工具DOM生成XML文件,然后利用DOM SAX对所生成XML文件里的详细信息进行解析
//连接数据库并生成XML文件import java.io.*;import java.sql.*;import java.io.FileOutputStream;import org.dom4j.*;import org.dom4j.io.OutputFormat;import org.dom4j.io.XMLWriter;import org.dom4j.Docum
2012-06-24 18:50:36
2620
原创 ajax:利用XMLHttpRequest建立到服务器的连接并处理返回信息
function ajaxFunction() { var xmlHttp; try { // Firefox,Opera 8.0+,Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xml
2012-06-13 20:34:01
991
原创 实现对HTTP协议工作过程的模拟
#include #include #include #include #pragma comment(lib,"Ws2_32.lib")using namespace std;int main(){ SOCKET sock; sockaddr_in addrSrv; string host="www.sina.com.cn"; hostent *haddr
2012-06-05 16:20:54
724
DataSet用法详解
2012-08-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人