随笔分类 -  C/C++

摘要:C语言中所有变量都有自己的作用域,申明变量的类型不同,其作用域也不同。C语言中的变量,按照作用域的范围可分为两种,即局部变量和全局变量。一、局部变量局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内,离开该函数后再使用这种变量是非法的。例如:int f1(int a) /*... 阅读全文
posted @ 2014-08-26 11:56 ywl925 阅读(856) 评论(0) 推荐(0) 编辑
摘要:近期看到有个有趣的问题,我简称为“空瓶子换水”问题,这里分两种情况,一种是有空瓶子,直接换水问题;另一种是知道怎么用空瓶子换水,如果满足一定数量的人喝水,需要至少买多少瓶问题。这里假设3个空瓶子可以换1瓶水,那么针对上面的两个问题,有如下解释。1.有空瓶子,直接换水对于计算方法,我这里提供两种,第一... 阅读全文
posted @ 2014-06-09 17:27 ywl925 阅读(9505) 评论(0) 推荐(0) 编辑
摘要:rand()使用 首先我们要对rand&srand有个总体的看法:srand初始化随机种子,rand产生随机数。定义函数 : int rand(void)函数说明 :因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,rand()会... 阅读全文
posted @ 2014-06-08 15:25 ywl925 阅读(1808) 评论(0) 推荐(0) 编辑
摘要:近期整理下很久前写的程序,这里就把它放在博文中了,有些比较简单,但是很有学习价值。下面就是自己很久前实现的复数重载代码,这里没有考虑特殊情况,像除法中,分母不为零情况。#include /*#include #include#include#include#include*/using namesp... 阅读全文
posted @ 2014-06-08 09:58 ywl925 阅读(1249) 评论(0) 推荐(0) 编辑
摘要:1、一个类占用的空间主要是属性占用空间,而成员函数一般不占用空间,但是虚函数占用空间,需要说明的是,无论多少个虚函数,只要占用4个字节即可,也就是索引指向一个虚拟表的首位置。另外需要说明的是占用空间都考虑了对齐,所以不足4个的按照满4个的算。2、类的继承,子类占用空间是父类基础上增加本类空间即可。所... 阅读全文
posted @ 2014-06-08 09:38 ywl925 阅读(2740) 评论(0) 推荐(0) 编辑
摘要:Questin:There is an array A[N] of N numbers. You have to compose an array Output[N] such that Output[i] will be equal to multiplication of all the ele... 阅读全文
posted @ 2014-05-19 15:56 ywl925 阅读(276) 评论(0) 推荐(0) 编辑
摘要:c++的两大特色是多态和模板。其中多态是通过继承和虚函数来实现的,其中虚函数是通过每个对象里面的虚表来实现的。如果这个对象的类有虚函数,那么这个类就有一张虚表,存的是每个虚函数的入口地址,而这个类的每个对象,都会有一个4字节的指针,指向这张虚表,这个就是虚指针。上面一段话很多人都知道,但是如果问普通... 阅读全文
posted @ 2014-05-05 21:45 ywl925 阅读(6906) 评论(1) 推荐(2) 编辑
摘要:优先级操作符描述例子结合性1()[]->.::++--调节优先级的括号操作符数组下标访问操作符通过指向对象的指针访问成员的操作符通过对象本身访问成员的操作符作用域操作符后置自增操作符后置自减操作符(a + b) / 4;array[4] = 2;ptr->age = 34;obj.age = 34;... 阅读全文
posted @ 2014-05-05 21:02 ywl925 阅读(49800) 评论(4) 推荐(10) 编辑
摘要:对于C Standard Library 可以参考:http://www.acm.uiuc.edu/webmonkeys/book/c_guide/或者http://www.cplusplus.com/reference/(一) 常用函数:1、 三角函数double sin(double);正弦do... 阅读全文
posted @ 2014-05-04 19:06 ywl925 阅读(1854) 评论(0) 推荐(0) 编辑
摘要:对于C Standard Library 可以参考:http://www.acm.uiuc.edu/webmonkeys/book/c_guide/或者http://www.cplusplus.com/reference/以前虽然用到过头文件,但是很多没有用过,这里就把它的所有函数罗列出来,方便以后... 阅读全文
posted @ 2014-05-04 10:39 ywl925 阅读(190) 评论(0) 推荐(0) 编辑
摘要:感觉这是一个比较简单的题,就不多解释了!犯了个小错误,就是提交的时候,把一句测试代码也提交了,导致时间大把的浪费了!╮(╯▽╰)╭,什么时候不犯这种错误!描述一般来说,我们采用针孔相机模型,也就是认为它用到的是小孔成像原理。在相机坐标系下,一般来说,我们用到的单位长度,不是“米”这样的国际单位,而是... 阅读全文
posted @ 2014-04-29 21:37 ywl925 阅读(791) 评论(0) 推荐(0) 编辑
摘要:偶然一次看见for循环语句,就对i++和++i(这里假设增值为1)有点疑问,这个以前就遇到过,长时间不去想,就又忘了,这里记忆一下。for循环的一般格式为:for(表达式1;表达式2;表达式3) 循环体;表达式1: 一般为赋值表达式,给控制变量赋初值;表达式2:关系表达式或逻辑表达式,循环控制条件;表达式3: 一般为赋值表达式,给控制变量增量或减量。语句:循环体,当有多条语句时,必须使用复合语句。for语句执行过程如下:①先对表达式1赋初值;②判别表达式2是否满足给定条件,若其值为真,满足循环条件,则执行循环体内语句,然后执行表达式3,进入第二次循环,再判别表达式2……;否则判断表达式2的.. 阅读全文
posted @ 2014-03-18 17:11 ywl925 阅读(7066) 评论(0) 推荐(1) 编辑
摘要:指针数组 定义 int *p[n];[]优先级高,先与p结合成为一个数组,再由int*说明这是一个整型指针数组,它有n个指针类型的数组元素。这里执行p+1是错误的,这样赋值也是错误的:p=a;因为p是个不可知的表示,只存在p[0]、p[1]、p[2]...p[n-1],而且它们分别是指针变量可以用来存放变量地址。但可以这样 *p=a; 这里*p表示指针数组第一个元素的值,a的首地址的值。如要将二维数组赋给一指针数组:int *p[3];int a[3][4];for(i=0;iusing namespace std;int main(int argc, _TCHAR* argv[]){ ... 阅读全文
posted @ 2014-03-18 16:55 ywl925 阅读(275) 评论(0) 推荐(0) 编辑
摘要:BOOL SetAutoRun(CString strPath)//开机自动运行 { CString str; HKEY hRegKey; BOOL bResult; str=_T("Software//Microsoft//Windows//CurrentVersion//Run"); if(RegOpenKey(HKEY_LOCAL_MACHINE, str, &hRegKey) != ERROR_SUCCESS) bResult=FALSE; else { _splitpath(strPath.Get... 阅读全文
posted @ 2011-04-17 17:28 ywl925 阅读(184) 评论(0) 推荐(0) 编辑
摘要:_splitpath,生成路径;_makepath ,分解路径#include <stdlib.h> #include <stdio.h> int main(void) { char path_buffer[_MAX_PATH]; char drive[_MAX_DRIVE]; char dir[_MAX_DIR]; char fname[_MAX_FNAME]; char ext[_MAX_EXT]; _makepath(path_buffer, "c", "//sample//progarm//","filename 阅读全文
posted @ 2011-04-17 17:15 ywl925 阅读(638) 评论(0) 推荐(0) 编辑

Copyright at 2012 yangwenlong