#include<iostream>
#include<string.h>
using namespace std;
const int Num=20;
void *my_memcpy(void *dst,const void *src,size_t n)
{
if(dst==NULL || src==NULL)return NULL;
char *dst1=(char *)dst;
char *src1=(char *)src;
while(n--)
{
*(char *)dst1++=*(char *)src1++;
}
return dst;
}
int main()
{
char *a;
char *src="justatest";
char *dst=new char[Num];
a=(char *)my_memcpy(dst,src,10);
cout<<a<<endl;
}
最近面试碰到要求写出memcpy函数,并且要求给出怎样测试所写的函数?
只想到以下方法:
首先采用白盒测试方法:
1.If(dst==NULL || src==NULL)采用条件组合的方式,
2.对于while语句采用循环覆盖率测试n=0,n=1,n=655535,n++;
其次采用黑盒测试方法:
3.对于输入类型(int ,char ,float,double,class);