`
ILoveDOUZHOU
  • 浏览: 78461 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

零星C编程

 
阅读更多

1、mmove(Des,Src,size);//将源地址的size大小东西copy到Des处

若是mmove(Src+1,Src,size),相当于将原来的信息,一次全部后移一位

如果用基本的C程序实现,需要 倒着!从后往前依次后移,如果是从前往后,前边的值会将后边的值掩盖掉。

for(int s=0;s<size;s++)
src[s+1]=src[s];

2、strcat(Des,Src);//将Src中内容接在Des后边,覆盖掉Des中‘\0',并添加'\0'

C语言中头函数是#include<string.h> C++中头函数是#include<string>

但是当Des的剩余大小不足以接上Src时,可能发生错误,并且如果Src、Des中含有\0可能会发生截断

此时可以考虑用memcpy(Des2,Src,size)来实现连接的功能,此时Des2记录Des中的末尾处。

3、当文件打开出错时,可能问题出在别处,C中文件打开一般不会出错

4、函数中有的参数,一般不在函数内部分配内存,一般在被调用之前分配好。无论在外边分配还是里面分配,要千万避免重复分配。


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics