摘要: #includeint main(){int i, j;while(scanf("%d%d", &i, &j) == 2)printf("%d\n", i + j);return 0;}关键循环读取 阅读全文
posted @ 2014-03-16 20:05 FREE小宝 阅读(98) 评论(0) 推荐(0) 编辑
摘要: LanguageCC++PascalTo read numbersint n;while(scanf("%d", &n) != EOF){ ...}int n;while (cin >> n){ ...}var n: integer;...while not seekeof dobegin read(n); ...end;To read charactersint c;while ((c = getchar()) != EOF){ ...}char c;while (cin.get(c)){ ...}var c: char;...while not eo 阅读全文
posted @ 2014-03-16 20:04 FREE小宝 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 全排列的生成算法就是对于给定的字符集,用有效的方法将所有可能的全排列无重复无遗漏地枚举出来。任何n个字符集的排列都可以与1~n的n个数字的排列一一对应,因此在此就以n个数字的排列为例说明排列的生成法。n个字符的全体排列之间存在一个确定的线性顺序关系。所有的排列中除最后一个排列外,都有一个后继;除第一个排列外,都有一个前驱。每个排列的后继都可以从 它 的前驱经过最少的变化而得到,全排列的生成算法就是从第一个排列开始逐个生成所有的排列的方法。1.字典序列字典序法中,对于数字1、2、3......n的排列,不同排列的先后关系是从左到右逐个比较对应的数字的先后来决定的。例如对于5个数字的排列 1235 阅读全文
posted @ 2014-03-10 16:08 FREE小宝 阅读(365) 评论(0) 推荐(0) 编辑
摘要: 例:struct a{int a;char b[10];double c;};在程序中只知道一个结构 a 的指针, 有没有函数能通过结构的名字 和 指向结构的指针 随次得到 结构中的变量类型 和 变量的值.C/C++ 里办不到。这是只有动态语言才有的特性。结构是存在于原程序中的为了方便人看和想的东西。编译器知道,但编译后就不存在了(结构中的变量和一般变量一样),名字也不存在了。保留DEBUG INFO除外如果结构体已经是1个byte对齐的紧凑模式的话,那么直接用memcpy即可转换为二进制流。就算是默认对齐的也可以直接memcpy结构体本质上就是一段内存也就是lz要的所谓二进制流,可以转换成c 阅读全文
posted @ 2014-03-06 10:45 FREE小宝 阅读(2626) 评论(0) 推荐(0) 编辑
摘要: 利用PreTranslateMessage,响应按钮控件的按下(WM_LBUTTONDOWN)和松开(WM_LBUTTONUP)VC的button控制只有两个事件,一个是单击事件,一个事双击事件。在这个方面VB就方便多了。但是我们有其他办法解决。首先我们先学一些基础知识。1...关于PreTranslateMessagePreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当你需要在MFC之前处理某些消息时,常常要在这里添加代码.2...关于MSG结构体typedef struct tagMSG { // 阅读全文
posted @ 2014-02-19 16:52 FREE小宝 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 在计算机程序中,数据的位是可以操作的最小数据单位,理论上可以用“位运算”来完成所有的运算和操作。 一般的位操作是用来控制硬件的,或者做数据变换使用,但是,灵活的位操作可以有效地提高程序运行的效率。C语言提供了位运算的功能,这使得C语言也能像汇编语言一样用来编写系统程序。 位运算符C语言提供了六种位运算符: &按位与 |按位或 ^按位异或 ~取反 >右移 1.按位与运算按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0。参与运算的数以补码方式出现。 例如:9&5可写算式如 阅读全文
posted @ 2014-02-18 13:21 FREE小宝 阅读(404) 评论(0) 推荐(0) 编辑
摘要: int a|=(1> (pos)&1)) //用宏得到某数的某位#define BitGet(Number,pos) ((Number) |= 1<<(pos)) //把某位置1#define BitGet(Number,pos) ((Number) &= ~(1<<(pos)) //把某位置0#define BitGet(Number,pos) ((Number) ^= 1<<(pos)) //把Number的POS位取反典型操作有:WTCON |= (1 << 5) //WTCON的第五位清1 WTCON &= 阅读全文
posted @ 2014-02-13 10:41 FREE小宝 阅读(1118) 评论(0) 推荐(0) 编辑
摘要: m_Grid.SetCellType(index,1,CGridCtrl::CellType_Check);//设置第index行、第一列的单元格为类似CheckBox的模样m_Grid.SetCellType(index, 1, CGridCtrl::CellType_Check); //设置第index行、第一列的单元格为类似CheckBox的模样OnGridCheckEdit(NMHDR*pNMHDR,LRESULT*pResult){*pResult=0;NM_GRIDVIEW*pItem=(NM_GRIDVIEW*)pNMHDR;if(!m_Grid.IsValid(pItem-.. 阅读全文
posted @ 2014-02-12 10:00 FREE小宝 阅读(1144) 评论(0) 推荐(0) 编辑
摘要: 1.在初始化数组尤其是需要每次都初始化的时候,很多同学使用循环来进行,这样不但速度慢,而且写起来也很长。所以现在提供一个函数来实现这个功能。。。原型:extern void *memset(void *buffer, int c, int count);功能:把buffer所指内存区域的前count个字节设置成字符c。包含头文件:注意这个函数是字符串函数,所以一定要包含字符串头文件。使用方法:int a[50];memset(a,0,sizeof(a));这样呢,就将数组a内所有的值都赋成0了,sizeof也是一个函数,得到数组a的字节大小。另外需要注意的是,memset函数是逐字节进行填充, 阅读全文
posted @ 2014-02-10 15:18 FREE小宝 阅读(1704) 评论(0) 推荐(0) 编辑
摘要: IE8 与 VS2005 冲突问题解决方法问题表现为:MFC类向导添加类时,出现“当前页面的脚本发生错误”,进入MFC类向导后上方有一个小黄条“此网站的某个加载项运行失败。请检查"Internet选项"中的安全设置是否存在潜在冲突”,基类下拉框无项值,无法成功添加MFC类。针对这一问题解决办法是:添加一注册表项:HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/Zones如果不存在1000这一项的话,首先添加;在此项(1000)中添加一个DWORD值名称为1207,类型 阅读全文
posted @ 2014-02-07 10:24 FREE小宝 阅读(401) 评论(0) 推荐(0) 编辑