sbrk.c

来自「uclinux在fpga上的移植时」· C语言 代码 · 共 47 行

C
47
字号
/*-----------------------------------------------------------------------------//     $Date: 2004/07/31 23:46:47 $//     $RCSfile: sbrk.c,v $//-----------------------------------------------------------------------------//// Copyright (c) 2004 Xilinx, Inc.  All rights reserved. // // Xilinx, Inc. // XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS" AS A // COURTESY TO YOU.  BY PROVIDING THIS DESIGN, CODE, OR INFORMATION AS // ONE POSSIBLE   IMPLEMENTATION OF THIS FEATURE, APPLICATION OR // STANDARD, XILINX IS MAKING NO REPRESENTATION THAT THIS IMPLEMENTATION // IS FREE FROM ANY CLAIMS OF INFRINGEMENT, AND YOU ARE RESPONSIBLE // FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE FOR YOUR IMPLEMENTATION. // XILINX EXPRESSLY DISCLAIMS ANY WARRANTY WHATSOEVER WITH RESPECT TO // THE ADEQUACY OF THE IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO // ANY WARRANTIES OR REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE // FROM CLAIMS OF INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY // AND FITNESS FOR A PARTICULAR PURPOSE.////---------------------------------------------------------------------------*/#include <errno.h>extern char _heap_start[];extern char _heap_end[];static char *heap_ptr;char *sbrk (int nbytes){  char *base;  if (!heap_ptr)    heap_ptr = (char *)&_heap_start;  base = heap_ptr;  heap_ptr += nbytes;  if (heap_ptr <= (char *)&_heap_end)    return base;  else  {    errno = ENOMEM;    return ((char *)-1);  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?