自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

苹果君的工作室

我也一直在努力

  • 博客(13)
  • 收藏
  • 关注

原创 指针的指针还是指针的引用

今天偶然说到一个函数的接口,是这样子的 void GetInt(int* &p); 函数的功能先不说,说说接口问题. 老师说.从调用方的角度讲,这个接口不清晰.先看看调用方怎么调用这个函数: ...   int* p;   GetInt(p);   ... 如上所示,调用方其实从代码上看,不是很确定p会被改变, 而这个函数是引用传递这个参数的,p随时都可能被改变.

2010-01-29 16:23:00 624 3

原创 winsock2 bind函数的功能

int bind(__in SOCKET s,__in const struct sockaddr* name,__in int namelen); bind函数只能用于还没有连接的socket,即只能在connect或者listen之前调用一个socket只能调用一次bind所以socket一旦bind就不能在改变

2010-01-27 01:14:00 1881

原创 sockaddr 和 sockaddr_in 的区别与联系

两个结构体如下所示:struct sockaddr { ushort sa_family; char sa_data[14];};struct sockaddr_in { short sin_family; //地址族 Socket只能用AF_INET u_short sin_port; //

2010-01-27 01:13:00 1129 1

原创 调用strcpy等函数时出现的内存泄漏问题

关于strcpy的一些内存泄漏的问题int main(){ char c; char* s = &c; strcpy(s, "hello"); printf("%s", s); return 0;} 编译运行之后出错,原因是因为strcpy越界了,"hello"字符串总共有6个字符,s只有一个内存空间strcpy不能够检查目

2010-01-27 01:12:00 3730

原创 Effective C++ 笔记(二)

E27 尽量少做转型动作转型动作会产生副本。2)真正调用了A类的fun函数,而1)却调用了转型产生的临时对象的函数,如果涉及到修改对象的数据,真正被修改数据的是临时对象,而不是this。1) static_castA>(*this).fun();     2) A::fun();尽量避免dynamic_cast操作,尝试寻找其他替代方案。如果转型是必要的,那就将其封装在一个函数

2010-01-27 01:11:00 2949 8

原创 安装WTL

下载WTL80.exe 安装接着在Appwiz下根据VS的版本执行相应的JSVS2008的JS见最后 安装完毕就可以创建WTL的APP了.////////////////////////////////setup90.js//////////////////////////////////////main();function main(){// Decode comm

2010-01-27 01:08:00 956

原创 PKU 1674 Sorting by Swapping

一开始打算用排序,然后计算当中的交换次数,发现有点难.看了discuss才知道.算法很简单,但是给不出严密的证明.找出序列中所有的"环",这里的"环"就是指它们互相交换之后能成为标准序列的最小集合交换的总次数 = 元素个数 - 环数很久没做题了,写写报告...#includeint a[10002];bool b[10002];int main(){int n;

2010-01-27 01:07:00 755

原创 PKU 1002 487-3279

用普通的方法一个一个地计数然后再按字典排序就超时了.用快速排序之后就是字典顺序,并且可以按顺序算出个数.#include#include#includeusing namespace std;int w[26]={2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,0,7,8,8,8,9,9,9,0};int change(string x)//将数

2010-01-27 01:05:00 779

原创 PKU 1207 The 3n + 1 problem

题目大意 : 输入两个数,输出两数之间计算3n+1步数最大的数.注意 : 输入的两个数不一定是小的数在前面大的数在后面(一个Wrong Answer...)首先,想都不用想就蛮力计算.每个case单独计算(15ms)后来发现测试数据实在太小(0到10000).就预处理了一下(0ms)哈哈.ps : 最近poj的c++标准改了.main函数没返回值会错(贡献一个compile error...)#i

2010-01-27 00:43:00 798

原创 PKU 3327 Candy Distribution

很搞笑地过了这道题.测试每个数据,发现2的n次方的结果都是YES.所以打了个表.发现AC了.不过不知道为什么,希望高人指点.#includelong s[40]={2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,83

2010-01-27 00:41:00 643

原创 PKU 1088 滑雪

本题使用的是动态规划算法~先把每个点按从小到大排序,然后扫描每个点s,对于s点周围的4个点,如果其高度大于s,且其长度比s的长度+1小,则其长度为s点的长度+1.搞定. #include#includeusing namespace std;const int MAX_H = 10000;const int MAX_RC = 102;struct Point{

2010-01-27 00:40:00 699

原创 PKU 1001 Exponentiation

#includeusing namespace std;const int MAX = 1000;int a[MAX];//存放原始数int b[MAX];//存放运算结果,但最终结果存放于数组c[]int c[MAX];//临时数组void init()//初始化{ for(int i=0;i<MAX;i++) { a[i]=0; b[i]=0;

2010-01-27 00:38:00 1044 1

原创 PKU 2676 Sudoku

题意很简单,解数独题.用深度优先搜索的方法从最有一个空格往前搜,(从前面搜会超时-_-) 每搜到一个空格便尝试填入1至9九个数字,每填一个数字就检查是否符合数独规则. 当填完最后一个空格是就可以输出解了(Special Judge,任何一个解都可以通过.)224K 15MS Accepted #includeusing namespace std;const int n=9

2010-01-27 00:32:00 705

空空如也

空空如也

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

TA关注的人

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