- 3
- 0
- 约4.87千字
- 约 8页
- 2016-10-07 发布于湖北
- 举报
写一个函数,完成内存移动,并为其写一个简单的测试用例来进行测试。
够简单的吧?有的同学很快就写出了答案,详见程序清单1与程序清单2。
程序清单 1 V0.1版程序
void MyMemMove(char *dst,char *src,int count)
{
while(count--)
{
*dst++ = *src++;
}
}
程序清单 2 测试用例
void Test()
{
char p1[256] = ”hello,world!”;
char p2[256] = {0};
MyMemMove(p2,p1,strlen(p1));
printf(“%s”,p2);
}
客观地讲,相比那些交白卷或者函数声明都不会写的同学来说,能够写出这段代码的同学已经非常不错了,至少在C语言这门课程上已经达到了现行高校的教育目标,但是离企业的用人要求还有一定的距离。我们不妨将上面的程序称为V0.1版本,看看还有没有什么地方可以改进。
首先我们看看函数声明是否合理,V0.1版的程序将源地址和目的地址都用char *来表示,这样当然也没有什么问题,但是让其他人使用起来却很不方便,假如现在要将count个连续的结构体对象移动到另外一个地方去,如果要使用v0.1的程序的话,正确的写法如下:
MyMemMove((char *)dst,(char *)src,sizeof(TheStruct)*co
您可能关注的文档
最近下载
- 2026年抽样检验试题及答案.docx VIP
- 人事处廉政风险防控排查表.doc-安徽医学高等专科学校.doc VIP
- 2025年互联网广告投放算法效果评估与智能广告投放平台优化报告.docx
- 做传统美德的践行者.pptx
- 公路沥青路面施工技术规范.doc VIP
- 3.4 情绪情感与社会性发展活动的实施(课件)《幼儿早期学习支持》(高教版)同步精品课堂.pptx VIP
- 2026 年化工企业火炬系统设计规范(SH_T 3009-2025,附火炬高度计算).docx VIP
- 日常防火检查巡查制度.docx VIP
- 年产30万吨饲料加工厂可研报告.pdf VIP
- 3.2 语言发展活动的实施(课件)《幼儿早期学习支持》(高教版)同步精品课堂.pptx VIP
原创力文档

文档评论(0)