摘要:
strlcpy and strlcat - consistent, safe, string copy and concatenation.Todd C. Miller University of Colorado, Boulder Theo de Raadt OpenBSD project AbstractAs the prevalence of buffer overflow attacks has increased, more and more programmers are using size or length-bounded string functions such as s 阅读全文
摘要:
Network Working Group P. CalhounRequest for Comments: 3588 Airespace, Inc.Category: Standards Track J. Loughney Nokia E. Guttman Sun Microsystems, Inc. G. Zorn Cisco Systems, Inc. J. Arkko Ericsson September 2003 Diameter Base ProtocolStatus of this Memo This document specifies an Internet standards 阅读全文
摘要:
内存泄漏对于C/C++程序员来说也可以算作是个永恒的话题了吧。在Windows下,MFC的一个很有用的功能就是能在程序运行结束时报告是否发生了内存泄漏。在Linux下,相对来说就没有那么容易使用的解决方案了:像mpatrol之类的现有工具,易用性、附加开销和性能都不是很理想。本文实现一个极易于使用、跨平台的C++内存泄漏检测器。并对相关的技术问题作一下探讨。基本使用对于下面这样的一个简单程序test.cpp:int main(){ int* p1 = new int; char* p2 = new char[10]; return 0;} 我们的基本需求当然是对于该程序报告存在两处内存泄漏。要 阅读全文
摘要:
/************************************************************************/
/* * 文件名称:write_log.cpp * 摘 要:此文件实现了普通WINDOWS程序中的日志功能 * 主要有以下特点: * 1. 根据日期创建日志文件目录,每天的日志分别存放在不同的日志目录中; * 2. 日志内容分三种类型,根据不同需要,写不同的日志类型的日志文件, * 方便通过日志定位、分析问题; * ... 阅读全文
摘要:
内部排序算法的C/C++实现排序是数据处理中经常使用的一种重要运算,在计算机及其应用系统中,花费在排序上的时间在系统运行时间中占有很大比重;并且排序本身对推动算法分析的发展也起很大作用。目前已有上百种排序方法,但尚未有一个最理想的尽如人意的方法,本文介绍常用的如下排序方法的C/C++实现,并对它们进行分析和比较。更详细的算法思想的介绍可以参考这里/*冒泡排序插入排序二路插入排序希尔排序快速排序选择排序归并排序堆排序算法的C/C++实现。作者:feosun日期:2008年10月12日参考资料:数据结构(C语言版)清华大学出版社*/#include<iostream>usingname 阅读全文
摘要:
Linux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、 阅读全文
摘要:
在双核CPU广告满天飞的时候,你对双核CPU了解又有多少呢???什么叫双核CPU呢?双核CPU和双CPU的区别又是什么呢?以下将会祥细为你介绍一下,想"充电"的话就准备好罗.....什么叫双核CPU与双CPU有什么区别?目前服务器市场可以说是新产品新技术层出不穷,光是服务器的核心CPU除了主频等参数外,最让人不明白的就是所谓的双核,电视报纸广告上也是频繁刊登双核服务器的广告。双核CPU与双CPU还有以前的超线程都有什么区别呢?我们选择服务器应该采取双核心CPU还是双CPU呢? 在一两年前CPU领域就出现了一个叫做超线程的技术,具备了超线程技术的CPU可以更高效的运行程序,特 阅读全文
摘要:
您要读的好书也绝非以下推荐的这些书哟,呵呵。 一句话,由于我们的时间、精力、金钱都是有限的,如何以最小的代价换得最大的收获。 经典好书分类热销榜 ================================================================ 1、Java Java编程语言(第三版)---Java四大名著----James Gosling(Java之父) Java编程思想(第2版)----Java四大名著----Bruce Eckel Java编程思想(第3版)----Java四大名著----------------Bruce Eckel JAVA 2核心技术 阅读全文
摘要:
转自:http://pengfei.zhmy.com/archives/2006/41955.html最近因为找工作,收集了很多C语言方面方面的面试题以及答案。现在新工作搞定了,决定把这些资料发出来,送给有需要的朋友,免得再象我一样到处搜寻,实在辛苦。发布之前先申明两点: 1 所有资料来自网络(主要是CSDN),本人只是收集和转发。 2 所有问题解答(尤其是代码)只是参考,不保证正确。先发基本问题,再发编程问题..........想成为嵌入式程序员应知道的0x10个基本问题:预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒... 阅读全文
摘要:
//定义画刷CBrushm_greenBrush;//在构造函数中初始化m_greenBrush.CreateSolidBrush(RGB(210,230,190));//实现函数(改变FromView与static控件的背景色,更改其他方法类似,//在nCtrlColor处添加)HBRUSHCErrKbaseSearchView::OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor){HBRUSHhbr=CFormView::OnCtlColor(pDC,pWnd,nCtlColor);if(nCtlColor==CTLCOLOR_DLG||nCtlColo 阅读全文
摘要:
VC中至少有三种快捷键编程的方法,通常在SDI,MDI结构的程序中通过加入Acclelerator资源的消息响应,快速地实现快捷键功能;除些之内,还有另两种方法.通常用在基于对话框的程序中. 1.#defineIsCTRLpressed()((GetKeyState(VK_CONTROL)&(1<<(sizeof(SHORT)*8-1)))!=0)//判断Ctrl键是否按下.BOOLCTDlg::PreTranslateMessage(MSG*pMsg){if(pMsg->message==WM_KEYDOWN){if(IsCTRLpressed()){switch( 阅读全文
摘要:
这几天写的程序中要用到这方面的东西,写了个很简单的例子.//必须包含的头文件#include<atlbase.h>#include"atlconv.h"#include"Mshtml.h"/**********************************************************************函数名称:intCErrKbaseDHtmlView::MM_FAULTKBASE&refKBaseInfo*说明:刷新HTMLVIEW页面内容*入口参数:*空*返回值:*int--*作者:socrates*时 阅读全文
摘要:
//转自:http://www.vcgood.com/forum_posts.asp?TID=2261&PN=1//用于输出指定目录下的所有文件的文件名,包括子目录。版本1:用string处理,方便,容易理解.#include<windows.h>#include<iostream>#include<string>usingnamespacestd;boolIsRoot(stringPath){stringRoot;Root=Path.at(0)+"://";if(Root==Path)returntrue;elsereturnf 阅读全文
摘要:
转自:http://www.vcgood.com/forum_posts.asp?TID=1692&PN=1一 程序的设计 要避免错误,首先要从好的设计开始。对于程序的设计,需考虑到程序的两个特性: 1简单性 大多数常见的错误来源于程序设计中不必要的复杂成分。一个好的设计应该反映问题本身的要求,而不必为了刻意追求“满足将来的需要”而添加不必要的特性。实际上,简单优雅的设计比那些复杂的设计更能迎合未来的需求。 2 耦合性 耦合(decoupling)性用来衡量不同对象之间的依赖程度。松耦合的程序易于理解和实现,易于测试和维护,且这种程序包含错误的可能性小,错误也较容易发现和清除。二... 阅读全文
摘要:
转自:http://www.cnitblog.com/ictfly/archive/2007/01/17/21976.aspxerror LNK2001: unresolved external symbol _main解决办法解决外部符号错误:_main,_WinMain@16,__beginthreadex -!t'my`yK 在创建MFC项目时, 不使用MFC AppWizard向导, 如果没有柚煤孟钅坎问? 就会在编译时产生很多连接错误, 如error LNK2001错误, 典型的错误提示有: m1+4#' libcmtd.lib(crt0.obj) : er 阅读全文
摘要:
工作一年了,注册CSDN账号也一年了.写一句话纪念一下:加油,Socrates! 阅读全文
摘要:
今天聊天时有人提出这样一个问题,感觉比较好玩,记在这里 #include "stdafx.h"int main(int argc, char* argv[]){ int i,j; i=8,j=10; printf("%d,%d,%d,%d/n",i,j,++i,j++); return 0;}在win tc 2.0下result:9, 11, 9, 10;在vc 6.0 debug模式下:9, 10, 9, 10;在vc 6.0 release模式下:9, 11, 9, 10;感觉debug模式下有些奇怪. 阅读全文
摘要:
右键菜单的创建总结本文介绍Pop-up的创建,右键菜单在应用软件中可以说是使用极其频繁的一种技术.结合实际项目,做以下总结; 1.定义菜单项结构体:#pragma pack(push, 1)struct stMenuItem{ int iMenuID ; //资源ID char szItem[30] ; //菜单项显示文本} ;#pragma pack(pop)2.在要使用Pop-up Menu的文件前定义变量://PerfTreeView.cppstMenuItem MenuItemInsertPerf[] = { {IDM_INSERT_ALLPERF, "增加性能"} 阅读全文
摘要:
通常我们在用VC进行数据库编程时首先会考虑到用向导通过ADO控件操作.的确,这是一个非常方便的方法.但也存在很大的不足,编程上的一些限制暂且不提,在客户使用方面,如你把用ADO控件写成的程序移动到另一台机器,由于相应的控件可能并没有提前安装,还有路径等问题.使得使用起来极为不便,本文提供了一个封装好的ODBC类,很好地解决了这个问题,实现很灵活的编程.我通过自己创建的一个示例程序说明:1. 我封装SQL的操作封装成一个类,用户使用时只要调用就行.//tool.h#include <sql.h>#include <sqlext.h>#include <odbcss. 阅读全文