作业帮 > 综合 > 作业

一段c++ 看的有点晕

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/04/29 21:30:05
一段c++ 看的有点晕
if((fds=(dhtfds *)malloc(mem))==NULL)goto error;
mem=strlen(fn)+1; /* file name */
if((fname=(char *)malloc(mem))==NULL)goto error;
strcpy(fname,fn);
第一句反正是申请一个大小为mem的空间,具体什么作用我也不知道,要结合程序其他部分来看,如果申请失败,则转向执行错误处理代码;
第二句是考虑到字符串结束会有一个结束符'\0',结束符不被strlen函数所考虑,所以拷贝字符串时,要多申请1字节的空间来放结束符.
第三句就是申请空间来放字符串了.
第四句,用拷贝函数将fn的值拷贝给fname