自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

平克弗洛伊德

We don't need no education, we don't need no thought control.

  • 博客(90)
  • 资源 (28)
  • 收藏
  • 关注

原创 面向对象构造、析构和virtual规则

1)构造函数是从基类到子类逐步构造,像一颗生长的树。2)析构函数是从子类到基类逐步析构,像一颗退化的树。3)基类声明了一个成员函数为virtual,子类只要重写了该方法,无论是否声明为virtual,都将具有多态的性质。#include using namespace std;class A{public: A(){cout << "constructed A"<< end

2016-11-15 17:57:23 571

转载 STL中map的成员函数insert的返回值

map在进行插入的时候是不允许有重复的键值的,如果新插入的键值与原有的键值重复则插入无效,可以通过insert的返回值来判断是否成功插入。下面是insert的函数原型:          pair insert(const value_type& x);可以通过返回的pair中第二个bool型变量来判断是否插入成功。下面是代码:#include #include i

2016-11-11 11:31:17 8739

原创 获取CTreeCtrl所有结点的附加数据(ItemData)

vector GetTreeCtrlAllNodeItemData(CTreeCtrl& _ctrl){ vector lstItmData; HTREEITEM hItem=_ctrl.GetRootItem(); DWORD_PTR itmData = NULL; if (NULL == hItem) { return lstItmData; } do { it

2016-10-17 16:21:53 3260

原创 浮点数与零比较

int FloatCompareZero(float f){ if (f > 0.00000001) { return 1; } if (f < -0.00000001) { return -1; } return 0;}

2016-10-09 17:45:17 1230

原创 折半查找递归和非递归实现

//递归int BinarySearch(int arr[],int n,int left, int right){ if (left <= right) { int middle = left + (right - left)/2; //防溢出 if (n == arr[middle]) { return middle; } else i

2016-08-19 18:16:32 780

原创 单链表的创建、插入、删除、销毁以及查找中间结点

#include #include #include //链表结构typedef struct _tagLinkList { int num; //数值 struct _tagLinkList *next; //链表下一个结点}LinkList,*PLINK;//初始化链表bool init_list(PLINK* head){ PLINK pLink = NUL

2016-07-12 21:54:49 1479

原创 根据某一分隔符分隔字符串

函数原型:BOOL AfxExtractSubString(CString& rString, LPCTSTR lpszFullString, int iSubString, TCHAR chSep = '\n')参数说明:rString  保存输出的子字符串lpszFullString  待分割的字符串iSubString  提取的子字符串的序号,从0开始

2016-04-20 10:23:58 732

原创 交换两个字符串内容

#include static void swap_string(char **p1, char **p2){ char *tmp = NULL; tmp = *p1; *p1 = *p2; *p2 = tmp;}static void swap_strings(char *src[][2],unsigned int row){ unsigned int i = 0;

2015-06-16 13:05:15 3650

原创 判断是否含有子串

#include #include unsigned char is_sub_array(int arr[],int arr_len,int subarr[],int subarr_len);unsigned char is_sub_array1(int arr[],int arr_len,int subarr[],int subarr_len);int main(){

2014-12-04 16:33:04 833

原创 获取bcd码的长度

unsigned int get_bcd_length(const unsigned char* bcd){ unsigned int length = 0; while (((*bcd&0xf0) != 0xf0) && ((*bcd&0x0f) != 0x0f)) { length += 2; ++bcd; } if (*bcd == 0xff)

2014-10-24 13:38:31 1339

原创 C++ Sort函数用法

#include using namespace std;#include #include typedef struct Test{public: int n; char* s;}Test;vector t;bool intcmp(Test a,Test b){ return a.n < b.n;}bool st

2014-09-02 13:40:18 897

原创 双链表基本操作

#include #include #include #define DNODE_SIZE sizeof(DNode)typedef struct _tagDNode{ int value; struct _tagDNode *prov; struct _tagDNode *next;}DNode;DNode* create_double_lin

2014-06-17 16:29:00 670

原创 自己写的单链表操作

#include #include #include #define NODE_SIZE sizeof(Node)typedef struct _tagNode{ int value; struct _tagNode *next;}Node;Node* createlink(Node *cur){ Node* pn = NULL; pn

2014-06-16 17:19:27 665

原创 根据结构体某个成员的地址求出结构体所有成员的值

思路:根据结构体部分成员的值,求出该结构体的首地址,从而求出所有成员的值。下面是一个结构体的内存模型低地址          ——>              高地址|_________|______|______|_____________|首地址   成员1  成员2 成员3 ……   末地址 根据内存模型,思考:如果可以求出某个成员的地址,再求出该成员离首地址

2014-06-04 18:02:45 1632

原创 异或巧解筷子问题

经常会遇到这样的题目:

2014-04-19 09:57:23 1397

原创 通过子网掩码判断两个IP是否在同一网段

#include #include #include unsigned char checkipv4seg(int seg){ if (seg 255) return 0; return 1;}unsigned char checkvalid(const char* ipv4){ int seg1,seg2,seg3,seg4; int

2014-04-17 18:23:02 2621

原创 输入年月日,求该年年初到此时的天数

#include unsigned char leapyear(int year){ if((year % 400 == 0) || (year % 4 == 0) && (year % 100 != 0)) return 1; return 0;}unsigned char checkvalid(int year, int month, int day)

2014-04-15 15:23:34 1118

原创 获取一个整型数组前三个最大的值

没有用堆排序,遍历一次就够了

2014-04-09 19:46:23 3163

原创 获取一个整型的每八位

#include typedef union tagTestEndian{ char ch; int n;}TestEndian;int main(){ int ip = 0x12345678; TestEndian t; t.n = 1; if (t.ch) {//大端 printf("%x %x %x %x\n",((uns

2014-04-04 18:22:52 1101

原创 获取一个子字符串第一次出现的位置

int substr(const char *src,const char *substr){ const char *p1,*p2; if (src == NULL || substr == NULL) { return -1; } p1 = src; while (*p1) { p2 = substr; if (*p1 != *p2

2014-04-04 17:10:58 2124

原创 从键盘输入任意个数字,以0为结尾,输出其中最大值

很简约的一段代码#include #include int main() { int a = INT_MIN; int Max; for (Max = a; a; scanf("%d",&a)) { if(a > Max) Max = a; } printf("Max number is:%d\n",Max); return

2014-04-01 17:27:06 5057

原创 通过void指针实现跨类型变量交换函数

#include #include #include void fun(void **src,void **dst){ void *tmp; tmp = *src; *src = *dst; *dst = tmp;}void swap(void *src,void *dst,int size){ void *tmp = malloc(size);

2014-03-27 09:18:11 1401

原创 字符过滤【二】有顺序的过滤重复字符

#include typedef struct tagFilterChar{ int ch; int n;}FilterChar;void insert_sort(FilterChar* arr,int n) { int i,j; FilterChar temp = {0}; for(i = 1;i < n; i++) { tem

2014-03-20 16:59:31 719

原创 字符过滤

#include void filterchar(const char* src, char* dst){ const char* p; int ch; int flag[0xff] = {0}; int i; if (src == NULL || dst == NULL) return ; p = src; while (ch = *p++) {

2014-03-19 10:46:57 644

原创 单词统计

#include using namespace std;#include #include long long getwordcount(map wordcount){ long long count = 0; for (map::iterator iter = wordcount.begin(); iter != wordcount.end(); ++i

2014-03-18 14:29:41 859

原创 获取整型数字某一位的值

int GetNumber(int opt_num,int pos){ int opt = opt_num < 0?-opt_num:opt_num; int res = 0; if(pos < 0) return -1; while(opt&&(pos-- >= 0)) { res = opt%10; opt /= 10; } return res

2014-01-23 10:50:08 2238

原创 判断是否是自守数

bool IsAutoMorphicNum(unsigned int num){ unsigned long long int pow = (unsigned long long int )num*num; while(num) { if(num%10 != pow%10) return false; num /= 10, pow/= 10; } ret

2014-01-14 10:06:58 4390

原创 求1到n的正整数中某个字符出现的次数

我自己写了一个,但是效率很低,大整数的时候比较慢,代码如下:#include #include int CountOf1s(int n, char ch ){ int i = 1; int num = 0; int count = 0; int temp = 0; if(ch '9' || n < 1) return -1; num = ch -

2013-12-28 19:05:17 1606 1

原创 C和C++中的结构体对比

在C语言中,结构体里的内容只能是const类型、普通变量或者结构体,而且不能被赋处置,即使是const类型的量。结构体中的所有成员对外都是可见的。像这样都是可以满足的typedef struct tagTest{ struct t { char ch; }; const int i; float f; enum tagDate { year,

2013-12-25 11:43:00 956

原创 获取32位整型变量中某一位的bit值

#include typedef unsigned int UINT_32;typedef unsigned char UINT_8;UINT_8 GetBit(UINT_32 number,UINT_32 index){ if(index 31) return 0xff; //如果传入参数有问题,则返回0xff,表示异常 return (number>>i

2013-12-13 10:03:26 7594

原创 C陷阱与缺陷中的一个问题——signal函数声明的剖析

在《C陷阱与缺陷》这本书的第2.1节“理解函数声明”中,作者通过对函数声明的一步步分析、引导、深入,最后得到一个signal函数:但是,当我第一次看到的时候也觉得没法理解,看过好多遍之后还是没法理解。这几天看《C++Primer》,突然明白了,所以就赶紧记录下来。我记得以前我在CSDN论坛上提过一个问题:请问signal函数如何调用?其实,如果理解了signal函数

2013-12-13 00:25:16 1099

原创 memcpy和memmove的区别

前几天面试,华为的一个技术人员问我一个问题:memcpy和memmove有什么区别?当时,我没回答上来。我只知道它们的入参和返回值是一样的,区别还不是很清楚,说不上来,我说可能效率不太一样吧。其实,这两个函数的效率几乎是一样的,区别只是在于内存重叠时,memcpy不能保证拷贝的正确,而memmove却能保证拷贝的正确性。换句话说,memcpy是memmove的子集,memmove更

2013-12-02 21:48:43 1234

转载 SQL Server 2005 不允许远程连接解决方法、数据库引擎启动服务器的方法

SQL Server 2005 不允许远程连接解决方法  解决SQLServer2005数据库引擎启动服务器的方法  做课程设计时,很多学生都遇到这个问题。把解决方法写在这儿,供参考。   刚刚安装的数据库系统,按照默认安装的话,很可能在进行远程连接时报错,通常是错误:"在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。

2013-09-27 09:24:48 1452

原创 为什么本机上无法用127.0.0.1登录SQL Server

数据库在本地,在测试数据库时,127.0.0.1突然连不上数据库了。无法在本机上用127.0.0.1登录SQL Server,是因为 SQL Server  “服务器网络实用工具”中禁用了“命名管道”所致!(在SQL Server 2005中同样有这一现象) 所以,只有在sqlserver configuration manager中启动该服务就行。如图启动完之后,必须关闭

2013-09-25 14:26:58 8738

原创 SQL Server2005数据库的备份和还原详细

在管理系统的开发中,经常会遇到将一个数据库从一台电脑转移到另外一台电脑。实现方法是:首先备份源数据库,然后将备份的.bak文件还原即可。1.备份依据上面的方法可以备份一个数据库的.bak文件。2.还原在sqlserver上新建一个数据库继续选择备份文件。选择“源设备”,点击文本框右边的按钮“...”,在弹出的对话框中选择数

2013-09-25 10:04:30 1174

原创 貌似是微软编译器的一个Bug

有如下代码:#include int my_func(void){ /* float f = 0.0; */ return(0.0 ? 1 : 0);}int main(void){ printf("%s\n", ( my_func() ? "ONE" : "NIL") ); return 0;}在vc6.0和vs2010中运行,

2013-09-06 11:46:11 781

原创 递归打印实数

#include void printOut(int n);int main(void){ int num; printf("请输入一个数字:\n"); scanf("%d",&num); printOut(num);}void printOut(int n) { /*该整数的中间数都以正数打出*/ if(abs(n) >= 10) { prin

2013-09-02 18:01:38 760

原创 引论中的问题【page1】

方法一:排序,返回第几个最大值,编码如下:#include //插入排序void insertion_sort(int array[], int first, int last);int main(void){ int arr[10] = {8,4,5,1,7,9,2,3,1,0}; int key = 0; int i = 0; printf("求第几个最大值?输入:\n")

2013-09-02 16:31:43 701

原创 判断一行输入是否是数字(包含小数点)

bool judgeInput( char* pnumber, size_t length){ unsigned int i = 0; unsigned char isdot = false; //СÊýµã±ê¼Ç //ÅжϷǷ¨ÊäÈë for (i = 0;i < length; i++) { if (*(pnumber+i) '9') {//²»ÊÇÊý×Ö

2013-08-30 11:16:07 1078

转载 VC++多线程编程

留个纪念,不错的总结。十个例子清晰列举啦多线程编程的奥妙。 VC中多线程使用比较广泛而且实用,在网上看到的教程.感觉写的挺好.一、问题的提出编写一个耗时的单线程程序:  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的

2013-08-08 11:41:58 763

Windows系统C库函数源码

Windows系统C库函数源码

2023-12-22

mfc140d.i386.pdb

调试MFC源码

2022-04-28

C#多线程实现调用外部程序并获取打印结果

一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用外部程序并获取打印结果 一个简单的例子,C#多线程实现调用外部程序并获取打印结果

2020-10-22

NPOI最新dll2.4.1.zip

NPOI最新dll2.4.1.zip

2019-12-19

C++日志打印google glog头文件和库文件大全(x86,x64,静态库动态库)

C++日志打印google glog头文件和库文件大全(x86,x64,静态库动态库) C++日志打印google glog头文件和库文件大全(x86,x64,静态库动态库) C++日志打印google glog头文件和库文件大全(x86,x64,静态库动态库)

2019-12-04

Visual C++ Redistributable Packages合集

Visual C++ Redistributable Packages的合集。包含2005、2008、2010、2012、2013、2015、2017 以及它们SP1补丁的x86、x64版本Redistributable Package合集。

2019-09-19

(升级补丁)PatchVS2008

(升级补丁)PatchVS2008

2019-04-23

图表详解UG+NX二次开发编

图表详解UG+NX二次开发编,

2019-03-20

tinyxml_2_6_2

2016-11-29

c++课后题目

c++题目

2013-11-25

编码的奥秘

编码的奥秘

2013-08-27

c无错秘诀.zip

c无错秘诀

2013-08-02

一个月挑战C++.chm

一个月挑战C++.chm

2013-07-11

C指针详解.CHM

C指针详解.CHM

2013-07-11

C++程序设计基础教程

C++程序设计基础教程

2013-07-11

算法导论.chm

算法导论.chm

2013-07-11

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分4

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分4

2013-06-13

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分3

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分3

2013-06-13

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分2

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分2 新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分2

2013-06-13

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分1

新概念51单片机C语言教程 入门、提高、开发、拓展全攻略_部分1

2013-06-13

Google搜索从入门到精通 v4.0

Google搜索从入门到精通 v4.0

2013-05-31

工程师应该掌握的20个模拟电路

工程师应该掌握的20个模拟电路

2013-05-31

Linux内核源码分析

Linux内核源码分析

2012-12-05

滚动截图软件

滚动截图软件用于截长图,尤其是滚动中的网页或窗口!操作简单却功能强大,强烈推荐!

2012-11-08

C语言函数速查CHM

内容比较全面的C函数速查手册,C程序员应该拥有这个小手册,为以后编程提供方便!

2012-11-08

The C programming Language

《The C Programming Language》译作《C程序设计语言》,是由著名的计算机科学家Brian W. Kernighan和C语言之父的Dennis M. Ritchie合著的一部计算机科学著作,是第一部介绍C语言编程方法的书籍。它是一本必读的程序设计语言方面的参考书。它在C语言的发展和普及过程中起到了非常重要的作用,被视为是C语言的业界标准规范,而且至今仍然广泛使用。它也被公认为计算机技术著作的典范,以清晰简洁的文字讲述而著称。书中用"hello,world"为实例开始讲解程序设计,也已经成为程序设计语言图书的传统。 本书的讲述深入浅出,配合典型例证,通俗易懂,实用性强,适合作为大专院校计算机专业或非计算机专业的C语言教材,也可以作为从事计算机相关软硬件开发的技术人员的参考书。 在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用如此广泛。

2012-11-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除