- 博客(61)
- 资源 (31)
- 收藏
- 关注
原创 DLL文件的作用
一、定义:DLL是Dynamic Link Library的缩写,意为动态链接库。在Windows系统中,从Windows3.x的后续版本起,大部分的系统DLL文件被存放在%SystemPath%Windows\System32文件夹中(systempath为系统安装根路径)目录下。DLL是一个包含可由多个程序同时使用的代码和数据的库。二、作用:一句话,就是把代码编译成分开的文
2012-10-31 11:35:03 1844
原创 Windows编程的通信机制
WIN32中进程间的通讯在Windows 95中,为实现进程间平等的数据交换,用户可以有如下几种选择:1. 使用内存映射文件2. 通过共享内存DLL共享内存3. 向另一进程发送WM_COPYDATA消息4. 调用ReadProcessMemory以及WriteProcessMemory函数,用户可以发送由GlobalLock(GMEM_SHARE,...)函数调用提取的
2012-10-31 10:26:49 954
原创 关于template的用法
template T eval (T a, T b) {T result;result = ((a>b)?a : b)+1;//返回较大的值,再自增1return (result);}int main () {int i=5, j=6, k;long l=10, m=5, n;k=eval(i,j);//类型设置为int,再自增1n=eval
2012-10-28 15:32:15 554
原创 fflush(stdout)作用
清空标准输出缓冲区,刷新输出缓冲区,即将缓冲区的东西输出到屏幕上 如果圆括号里是已写打开的文件的指针,则将输出缓冲区的内容写入该指针指向的文件,否则清除输出缓冲区。这里的stdout是系统定义的标准输出文件指针,默认情况下指屏幕,那就是把缓冲区的内容写到屏幕上。可是从代码中看不出缓冲区会有什么内容,所以它实际上没有起什么作用
2012-10-28 15:24:54 2609
原创 const函数 和非const函数
一、有两种const函数:1、const T func(); 表示返回的是const的类型,也即返回的值不能作为左值。2、T func() const; 表示该成员函数不能修改其成员变量的值,即该函数不能改变任何该类的非静态成员的值。例:class A{public: int get_a() const{return a;}private:int a;int b
2012-10-28 14:46:47 981
原创 简单实例说明类,类对象的大小
类的大小与类对象的大小相同以下面的实例进行说明class FirstClass // 定义一个类{public: FirstClass() { }private:int i; //4float f;//4char c;//1,要进行对齐,最后为4};int main(){int i = sizeof(FirstClass);/
2012-10-28 14:38:54 550
转载 typedef用法小结 以及与define的区别
typedef与 define区别 下面以一段代码进行说明typedef char * Typedef_char;#define Define_Char char* //no semicolon herevoid main(int argc, char *argv[]){ char s[] = "asdf"; const Typedef_char
2012-10-27 11:01:07 572
原创 一个关于printf()函数的小程序
#include #include char *str = "char *str = %f; main() {printf(str, 37);}";int main(){float a = 3.0;printf(str, a, str, 37);//printf() 可以有多个参数,但只要保证第一、二个正确,后面的执行情况不清楚,求各位路过的大侠指教printf(s
2012-10-26 21:26:35 645
原创 extern "C"的双重含义
一、1. 被extern "C"限定的函数或变量是extern类型的 extern是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其它模块中使用。注意: extern int a; 仅仅是一个变量的声明,其并不是在定义变量a,并未为a分配内存空间。变量a在所有模块中作为一种全局变量只能被定义一次,否则会出现连接
2012-10-25 14:36:53 734
原创 如何引用与局部变量同名的全局变量
在C语言中:C语言中无法引用被隐藏的外部作用域对象,因为无法指定具体作用域。在C++中:C++中要引用被隐藏的全局作用域对象,可以在对象的标识符前加上 :: 限定全局作用域。示例:int val = 10;int get_val(){return val;}void test(){int val = 5;.....get_
2012-10-25 12:37:02 7297 1
原创 什么情况下,类的析构函数应该声明为虚函数?
析构函数的用法:1.每个析构函数(不加 virtual) 只负责清除自己的成员。2.可能有基类指针,指向的确是派生类成员的情况。对于第二种情况:正确执行:基类指针可以指向派生类的对象(多态性),如果删除该指针delete []p;就会调用该指针指向的派生类析构函数,而派生类的析构函数又自动调用基类的析构函数,这样整个派生类的对象完全被释放。如果析构函数不被声明成虚函数,则编译器实施静态
2012-10-25 12:05:04 3783
原创 求字符串,字符,或数组的大小
一、sizeof(), sizeof' ' , sizeof" "三种情况 sizeof():括号里面可以是数组名,也可以“abc.....”;sizeof' ':只能是字符,当是一个字符的时候大小为1,二三四个字符时则为4,大于4个字符则编译通不过 sizeof" ":双引号里面是字符串,求出的长度是字符串 + ‘\0’ 的长度,即长度加1二、strlen()
2012-10-25 10:28:17 2013
原创 关于文件写入
当两个指针指向同一个文件,分别进行写入时,第二个指针写入的数据会覆盖第一个指针写入的数据例: FILE *fptr1, *fptr2, *fptr3; //定义三个文件指针fptr1=fopen("file1.c", "w"); //对文件进行写操作,建立指针与文件的联系,指针指向文件首地址fptr2=fopen("file1.c", "w");//f
2012-10-25 09:56:24 625
原创 静态存储区 存储时地址由低向高
静态存储区 存储时地址由低向高union Ux{int a;char ch[2];}x; //空间大小为int 的4,即00000000 00000000 00000000 00000000, 该变量为全局变量,存在静态存储区int main(){x.ch[0] = 1;// 先存低位00000000 00000000 00000000 00000001
2012-10-24 21:35:59 1952
原创 函数指针
int fun1() { return 0;} int fun2() { return 0; } int main() { int (*p)() = fun1; //函数指针 p = fun2; return 0; }
2012-10-24 20:11:18 496
原创 error C2105: '++' needs l-value 数组名自增时遇到
如下, k 是变量, 它存得是地址, 变量可以作为左值,可以自增。 b是数组名, 数组名是地址, 但此时是作为常量,不可作为左值,不可以自增; 数组名是地址 它不是变量 数组才是变量 int b[]={10,20,30,40,50}; int i, *k; k=&b[4]-4; for (i=0; i { cout //依次输出每一
2012-10-24 19:38:01 8385 1
原创 函数重载时,参数的一种情况
下面两个函数在编译时是一样的void foo(int i);void foo(int &i);//引用, 同上,编译器无法识别void foo(int i){ cout }void foo(int &i){ cout }int main(){ int i=10; foo(i); return 0;}
2012-10-24 19:08:38 519
原创 指针的引用 C++代码简单实例
int main(){ int a = 1; int *b = &a; int * &p = b;//p是 b指针的引用,其用法与b的完全一样 int &C = a;//c是a的引用, C=1c++;// a = 2cout (*b)++; //b指向a, a = 3; cout (*p)++;//其用法与b的完全一样, a = 4; cout
2012-10-24 18:59:18 509
原创 当为指针分配0大小的空间会怎样
P不会是NULLint main(){int *p;//p 默认指向oxcccccccc p = (int *)malloc(0);//P指向ox003960co , 效果同p = (int *)malloc(1)if (p == NULL){cout}else{cout//这步将被执行}return 0;}
2012-10-24 13:31:50 1612
原创 using的作用
一、两种运用方式:1.引入命名空间的类库方法,或者命名空间别名;允许在命名空间中使用类型,这样就不必在该命名空间中限定某个类型的使用: 复制代码 using System.Text; 为命名空间或类型创建别名。这称为“using 别名指令”。 复制代码 using Project = PC.MyCompany.Project; 2.资源释放的作用范围:跳出using作用的范
2012-10-20 11:05:15 4021
原创 一些容易出错的小地方
一、关于宏 要注意优先级 例: #define Square(a) ((a)*(a)) int a = 5;int b = Square(a++);//b = 25, 但a经过两次自增后,为7,而程序的原意是求a平方后,a自增1,故此处易出错二、关于自增 例: int a, b, c;a = 3;b =
2012-10-20 09:44:02 864
原创 IP地址与MAC地址
一、为什么要进行映射1.多播时需要特定的MAC地址,因为在以太网中的2层及以下是不识别IP地址的,只认MAC,所以不需转换成MAC地址2.一个多播(组播)对应一个MAC,网卡的地址虽然固定,但是,它可以监听到任何MAC的通讯,只要它连接的网线上有的数据,只不过在向上层传输时,一般会被忽略掉,是否向上层传输是可以设置的,甚至可以接受2层所有能接收到的数据,传输给应用层,只要设置正确的话。
2012-10-17 20:55:19 4217 3
原创 确认测试 是否等于 验收测试
两者目的和意义完全不同传统解释确认测试在系统测试之前,主要针对被测软件自身开展的测试,以功能性测试为主,是由团队测试人员进行的;系统测试与确认测试有很多相同之处,但是最大的差别在于考虑到系统环境因素,例如软硬件环境,人的行为模式,网络环境等等,除了功能性外对于性能、可靠性等关注较多,也主要由团队测试人员进行的;验收测试,为用户主导实施,一般在最后阶段,即系统测试以后
2012-10-17 15:22:39 6336
原创 状态机
参考:http://blog.163.com/taofenfang_05/blog/static/6421409320118136542679/一、定义即 状态转移图。就是状态在不同的条件下跳转到自己或不同状态的图。1.它是一个有向图形,由一组节点和一组相应的转移函数组成。2.状态机通过响应一系列事件而“运行”。每个事件都在属于“当前” 节点的转移函数的控制范围内,其中函数
2012-10-16 13:44:08 909
转载 ACID
数据库事务正确执行的四个基本要素原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的数据库系统,必需要具有这四种特性,否则在事务过程(Transaction processing)当中无法保证数据的正确性,交易过程极可能达不到交易方的要求。
2012-10-16 13:17:19 542
原创 V模型 W模型 H模型
1.软件测试过程模型-V模型 是软件开发瀑布模型的变种,主要反映测试活动与分析和设计的关系; 局限性:把测试作为编码之后的最后一个活动,需求分析等前期产生的错误直到后期的验收测试才能发现 2.软件测试过程模型-W模型 在V模型的基础上,增加千开发阶段的同步测试,形成W模型;测试与开发同步进行,有利用尽早的发现问题 局限性:仍把开发活动看成是从需求开始到编码结束的串行活动,只有上
2012-10-15 00:12:44 1928
原创 虚拟机与虚拟主机 区别
虚拟机是个软件,是用来虚拟各种操作系统的! 你可以在计算机上装个虚拟机,然后在虚拟机上装其他的系统虚拟主机,是在网络服务器上划分出一定的磁盘空间供用户放置站点、应用组件等,提供必要的站点功能与数据存放、传输功能。 是空间 就是我们做网站时候存放网站程序的地方。 虚拟机是个软件用来装操作系统,
2012-10-14 20:23:58 7954
转载 自动化测试开展策略分析
一般而言,刚开始自动化测试时,很多时候,很多人都不知道如何入手或者还有一部分人都信心满满,决心要建设出一份大的平台,可是事实在于自动化测试面临的问题一在于技术,二在于环境形势。每个公司有不同的需求、有不同的环境、不同的人员支持,所以做自动化测试所需要涉及的外界因素太多,就如黑天鹅效应中的说法,你所自认为的白天鹅中也许就隐藏着一只黑天鹅,它的出现会导致你的整体计划崩盘。所以,做自动化测试也一样,所依
2012-10-14 20:08:35 1439
转载 关于编写测试计划
一.首先了解以下几个问题:51Testing软件测试网K,x$x`)xe 51Testing软件测试网^f4I-lYF1. 为什么要编写测试计划?Z9Q0P~@Z6xw01)领导能够根据测试计划做宏观调空,进行相应资源配置等;51Testing软件测试网!Y8J/]4t*T2)测试人员能够了解整个项目测试情况以及项目测试不同阶段的所要进行的工作等;7w
2012-10-14 20:08:06 1701
转载 关于软件测试
软件测试什么是软件测试?其实现在很多人对软件测试这一职业不是很了解,不知到底什么是软件测试。关于软件测试的定义有很多种,我个人觉的比较符合的是:“使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别”。由于现在软件发展的十分迅速,软件的复杂度也越来越高,所以软件测试现在也变的原来越重要,软件测试贯穿于整个软件生命周期,软件测试
2012-10-14 20:06:48 1016
转载 如何做好一个测试leader
http://www.51testing.com/?uid-246015-action-viewspace-itemid-823634做的是敏捷测试,所以并不适合所有项目。1、PRD review PRD(Product Requirements Document)产品需求文档是测试执行的源头,只有PRD业务描述清晰、完整、正确才能保证整个测试流程的“生命”,否则整个流程
2012-10-14 20:04:26 1336
原创 为什么尽量不要让时间有富裕的员工去做一些测试?
1、非专业测试人员,没有组织性的测试工作,如项目组的其他成员(项目/产品经理、程序员、客户经理等等),这些人员进行测试也只是属于“猴子”测试方式去“玩”被测软件,没有规律和针对性,会影响到测试的质量与版本更新的速度;2、专业测试人员,但不属于本次测试小组的测试人员,这些人员测试不受测试计划的时间与任务约定(可能测试一半后就脱离返回自己原有的测试任务去了),测试完毕后无法评估测试小组的工作质量,
2012-10-14 19:51:25 3377
原创 c中的printf和c++中的cout有什么区别
printf是一个函数,而cout是一个对象C中的printf是一个标准的输出函数。C++中的cout是在iostrem文件中定义的全局对象 联系:完成的功能一样,都是输出 区别:1.书写格式不一样eg: int a=6; coutprintf("%d\n",a)2.printf需要你告诉它格式(int %d, double %f,char %c)
2012-10-14 19:33:30 11354
转载 QC测试 QTP测试平台
一、 如果要搭建自动测试体系,需要完成以下几个工作:1、规范测试脚本的配置管理2、制定测试脚本的编码规范,QTP脚本还要制定对象仓库和VBS的规范3、创建自动测试实验室,通过控制台指挥各个测试机分布式执行脚本,并集中收集测试结果4、健全测试脚本的维护机制,脚本责任到人 第一点:脚本的配置管理,因为QTP本身提供了和QC集成的功能,使用QC作为配置管理工具非
2012-10-14 19:23:52 2003
原创 C/C++ 内存分配里的 堆和栈 与数据结构里的 堆和栈
一、简单说 数据结构的堆和栈 与 内存分配里的堆和栈 没有关系。1.数据结构的 堆和栈 只是一种数据结构,侧重的是数据逻辑上的存放,读取,组织方式。用在 排序和OS任务优先级调度2.内存堆和栈 是实实在在的东西,堆可以想象成内存池。 栈作用主要是存放函数调用的参数和该函数分配的空间, 等调用结束, 自动回收这些分配的空间. 堆是由操作系统负责管理的空间, 这块空间完
2012-10-14 16:33:16 2039
转载 C++程序的内存格局通常分为哪几个区
五大内存分区 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有
2012-10-14 16:14:40 6054 1
转载 堆栈溢出
堆栈溢出就是不顾堆栈中分配的局部数据块大小,向该数据块写入了过多的数据,导致数据越界,结果覆盖了老的堆栈数据。 或者解释为 在长字符串中嵌入一段代码,并将过程的返回地址覆盖为这段代码的地址,这样当过程返回时,程序就转而开始执行这段自编的代码了。从物理上讲,堆栈是就是一段连续分配的内存空间。在一个程序中,会声明各种变量。静态全局变量是位于数据段并且在程序开始运行的时候被加载。而程序的动态
2012-10-14 16:01:55 1095
转载 static全局变量与普通的全局变量?static局部变量和普通局部变量?static函数与普通函数有什么区别?
问:1.我定义了一个结构体struct student{ char num[15]; char name[20]; int c_language; int math; int english;}stu[3]; 再写一个函数接收这个结构体,比如void intput (struct student a[])现在调用函数input (st
2012-10-14 15:48:59 686
原创 测试代码 与 设计文档
测试代码不可以完全取代自然语言形式的设计文档呢,原因有三:其一,测试代码虽然比源代码容易理解,但它仍然是代码,不是所有人都能理解的;其二,测试代码的宏观表达能力还是不如自然语言或图表;其三,很多人习惯看文字而不是看代码,彻底改变人的习惯很难。所以在TDD开发过程中,比较好的形式是自然语言的文档和测试代码相结合,用自然语言的文档做一个够用的设计就行了,这个设计只要详细到模块关系这一级
2012-10-10 19:05:17 902
华为 C++ 培训资料
2013-03-28
去除字符串中指定的某字符 如hello去除o,则输出为hell
2012-10-16
C++读一个txt文件,然后计算该文件中有多少行,多少个字符
2012-10-07
将两个升序链表A、B合并到C,并使C成为降序
2012-09-30
C++中new/delete与new[]/delete[]的使用区别
2012-09-18
约瑟夫环的实现
2012-09-03
1.任意输入一个数,用两种方法判断该数是不是回文数,像1,323,45254; 2.任意输入一个字符串,判断它是不是一个回文字符串
2012-08-27
求解三个女儿的年龄
2012-08-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人