«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告
My blog is about my major : network security.the most papers are talk about it ,I like my major ,i wish you could find what's you need in it.

我的分类(专题)

首页(78)
others(4)
HTML+CSS+JS(2)
汇编(1)
music(0)
art(0)
linux(29)
php(1)
math(0)
network security(1)
idea(0)
企业管理与营销(4)
life(10)
link(0)
软件工程理论(2)
C/C++(14)
algorithm(1)


最新日志
何谓数据结构
陈老师的BLOG
iptables 规则的保存
compatible , enhance
重装windows后,修复Fedora的
著名的SQL注入攻击法 (转)
PE病毒技术剖析[转载]
auto register stat
调节WINDOWS为保护眼睛的颜色!
类似深构造函数的运算符‘=’重载用法

最新回复
直接给他这个时间做什么就行
回复:三国典故集锦
回复:《如何控制自己的时间和生活 》精彩
回复:扫描方法详细
回复:心态决定一切
回复:心态决定一切
回复:男人100
回复:信息熵(定义,性质,热力学熵)
回复:《如何控制自己的时间和生活 》精彩
回复:编写类string的构造函数、拷贝

留言板
签写新留言


统计
blog名称:我的IT人生
日志总数:78
评论数量:185
留言数量:-1
访问次数:523829
建立时间:2006年4月5日

链接




本站首页    管理页面    写新日志    退出

[C/C++]auto register static extern const
zc9706 发表于 2008/4/19 17:04:02

auto: 这个这个关键字用于声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量。这个关键字不怎么多写,因为所有的变量默认就是auto的。

阅读全文(8142) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]类似深构造函数的运算符‘=’重载用法
zc9706 发表于 2008/4/9 20:25:00

当类中包含指针成员*P而使用默认的赋值运算符‘=’来进行赋值操作的时候,会出现该类的这两个对象的*P指向内存中(堆中)同一片区域的现象,这时,如果这两个对象调用析构函数来释放空间,则会出现同一个内存区域被反复释放的危险操作。(=操作类似于浅析构函数。) 解决方法:重载‘=’操作符,并在函数中重新new空间,以方便析构函数释放。 e.g. sample &operator=(sample &s) { delete p;  //清除原来的指针 p=new char[strlen(s.p)+1];//重新申请指针及空间 strcpy(p,s.p);//拷贝构造过程 return *this; }

阅读全文(2671) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]SDK简介
zc9706 发表于 2008/4/6 10:21:48

    SDK是Software Development Kit的缩写,中文意思是“软件开发工具包”。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做“SDK”。具体到我们这个系列教程,我们后面只讨论广义 SDK 的一个子集——即开发 Windows 平台下的应用程序所使用的 SDK。     其实上面只是说了一个 SDK 大概的概念而已,理解什么是 SDK 真有这么容易吗?恐怕没这么简单!为了解释什么是 SDK 我们不得不引入 API、动态链接库、导入库等等概念。^_^,不要怕,也就是几个新的名词而已,我也是到了大学快结束的时候才体会到其实学习新知识就是在学习新名词、新概念和新术语。     首先要接触的是“API”,也就是 Application Programmi
阅读全文(3660) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]银行家算法
zc9706 发表于 2008/4/5 9:55:43

转自:http://dev.csdn.net/article/52/52226.shtm 特别申明:转载一位大哥的程序
一.算法介绍:
**数据结构:
1.可利用资源向量Available
2.最大需求矩阵Max
3.分配矩阵Allocation
4.需求矩阵Need
  **功能介绍:
模拟实现Dijkstra的银行家算法以避免死锁的出现.分两部分组成:
第一部分:银行家算法(扫描)
1.如果Request<=Need,则转向2;否则,出错
2.如果Request<=Available,则转向3,否则等待
3.系统试探分配请求的资源给进程
4.系统执行安全性算法
第二部分:安全性算法
1.设置两个向量
(1).工作向量:Work=Availabl
阅读全文(2034) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]关于printf的另类用法
zc9706 发表于 2008/4/4 21:12:56

main()
{
 char a[]="a";
 char b='b';
 int c=0x12ff7c;
 printf("%x\n",a);  //输出  12ff7c
 printf("%c\n",a);  //输出  |
 printf("%d\n",b);  //输出  98
 printf("%c\n",b);  //输出  b
 printf("%c\n",c);  //输出  |
 printf("%x\n","wefd"); //输出  ?
 printf("%c\n","dfdfd"); //输出  ?
 printf("%c\n","fd");    //输出  ?
 printf("%c\n","jk
阅读全文(1869) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]如何用栈实现递归与非递归的转换(2)(转 GOOD)
zc9706 发表于 2008/3/31 22:03:18


三.三个例子
好了上面的理论知识已经足够了,下面让我们看看几个例子,结合例子加深我们对问题的认识
.即使上面的理论你没有完全明白,不要气馁,对事物的认识总是曲折的,多看多想你一定可以明
白(事实上我也是花了两个星期的时间才弄得比较明白得). 1)例子一: f(n) =  n + 1;       (n <2) 
             f[n/2] + f[n/4](n >;= 2);
        这个例子相对简单一些,递归程序如下:
        int     f_recursive(int n)
     &n
阅读全文(1917) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]如何用栈实现递归与非递归的转换(1)(转 GOOD)
zc9706 发表于 2008/3/31 21:31:09


如何用栈实现递归与非递归的转换 http://www.chinaunix.net 作者:converse 发表于:2006-08-24 09:00:06 原文:http://www.chinaunix.net/jh/23/331522.html
   http://blog.csdn.net/dragondwy/archive/2006/06/30/855391.aspx  http://liqunsun.spaces.live
阅读全文(1723) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]谈VC++对象模型( Good 转)
zc9706 发表于 2008/3/28 19:41:36

一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对于C++的诠释。Inside the C++ Object Model虽然是一本好书,然而,书的篇幅多一些,又和具体的VC++关系小一些。因此,从篇幅和内容来看,译者认为本文是深入理解C++对象模型比较好的一个出发点。

  这篇文章以前看到时就觉得很好,旧文重读,感觉理解得更多一些了,于是产生了翻译出来,与大家共享的想法。虽然文章不长,但时间有限,又若干次在翻译时打盹睡着,拖拖拉拉用了小一个月。

  一方面因本人水平所限,另一方面因翻译时经常打盹,错误之处恐怕不少,欢迎大家批评指正。

  前言

   了解你所使用的编程语言究竟是如何实现的,对于C++程序员可能特别有意义。首先,它可以去除我们对于所使用语言的神秘感,使我们不至于对于编译器干的 活感到完全不可思议;尤其重要的是,它使我们在Debug和使用语言高级特性的时候,有更多的把握。当需要提高代码效率的时候,这些知识也
阅读全文(1839) | 回复(0) | 编辑 | 精华 | 删除

[C/C++]编写类string的构造函数、拷贝构造函数和析构函数
zc9706 发表于 2008/3/27 19:03:28

 

阅读全文(13479) | 回复(2) | 编辑 | 精华 | 删除

[C/C++]C++内存分配问题
zc9706 发表于 2008/3/25 14:53:43

网上看到,感觉讲得很清晰,刚好能解答我上次的笔试题
char* r = "hello word!"; //指针在栈上,数据放在常量区;
char b[]="hello word!" //b在栈上,数据在栈上;
*r = 'w'; //修改常量区的值,报错;
*b='w'; //修改栈上的值,允许;

其实应该是语法错误,可是VC++6.0没有警告或者错误,r指向的是文字常量区,此区域是编译的时候确定的,并且程序结束的时候自动释放的, *r = 'w';企图修改文字常量区引起错误,b的区别在于其空间是在栈上分配的,因此没有错误。

const char* r = "hello word!"; //与上同;

*r = 'w'; //对常量进行赋值,报错;



一个由c/C++编译的程序占用的内存分为以下几个部分
1、
阅读全文(1866) | 回复(0) | 编辑 | 精华 | 删除

« 1 2 »
站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.109 second(s), page refreshed 144786225 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号