malloc,realloc,calloc一直很头疼,这次笔试题需要在数组后重新分配新的空间的代码是:

//删除函数,删除ptr中的ptr[in]元素,n是数组原来的长度。
void rmv(int *ptr,int in,const unsigned int n)
{
unsigned int i;
for (i=in; i<n-; i++) {
*(ptr+i)=*(ptr+i+);
}
realloc(ptr,sizeof(int)*(n-));
} ----------------------------------------------- //插入函数,在整形数组ptr中的ptr[in]之前插入x,n是原数组的长度
void rin(int *ptr,int in,int x,const unsigned int n)
{
unsigned int i;
realloc(ptr,sizeof(int)*(n+));
for (i=n; i>in; i--) {
*(ptr+i)=*(ptr+i-);
}
ptr[in]=x;
} //需要包含stdlib.h头文件。

malloc分配空间之后需要free掉,以后得记住了。

附带删除一个单向链表的最中间元素,不能使用两次循环。

void delMiddle(link *head)
{
if(head == NULL)
return;
else if(head->next == NULL)
{
delete head;
return;
}
else
{
link *low = head;
link *fast = head->next;
while(fast != NULL && fast->next != NULL)
{
fast = fast->next->next;
if(fast == NULL)
break;
low = low->next;
}
link *temp = low->next;
low->next = low->next->next;
delete temp; }
}

最新文章

  1. C#运用GmaQrCode生成二维码
  2. 二级c程序设计题(1)
  3. 初学java之StringBuffer类的常用方法
  4. Innodb物理存储结构系列2 行记录格式
  5. 约瑟夫环问题-循环链表VS数组
  6. php单入口session处理
  7. Javascript-one
  8. qt5.6 for android
  9. .net string类型集合转int集合
  10. python自动化开发-3
  11. 【转载】 pytorch之添加BN
  12. py-day2 python 列表
  13. HttpURLConnection与HttpClient随笔
  14. android画板笔锋实现
  15. java框架----&gt;commonmark的使用(一)
  16. cmake 及make 实践记录
  17. LeetCode Number of Atoms
  18. SaltStack 的通讯及安全机制
  19. Python解释器种类以及特点 (经典概括, 便于理解和记忆)
  20. Python3 下安装python-votesmart

热门文章

  1. Swift - 代码创建单例
  2. php PDO:数据访问抽象层
  3. Linux桌面选型
  4. Delphi的字符串、PChar和字符数组之间的转换
  5. Delphi编译dll时出错&quot;Cannot debug project unless a host application is defined.use the run|parameters...dialog box.&quot;
  6. 【JAVA集合框架之工具类】
  7. 使用Asyncio的Coroutine来实现一个有限状态机
  8. linux内核的组成,王明学learn
  9. 使用SOUI开发的界面集锦
  10. jquery audio player