我給分配代碼是 dat* data = NULL;
data = sbrk(SIZE);
if((int) data != -1){
return data
}else{
printf("Not enough space");
}
的SBRK(...)函數返回一個有效的ADRESS(0x603021),但是當我進入gdb和打印sbrk(0)我得到十六進制值0xfff
我正在爲STM32F7編寫一個嵌入式軟件,我的libc是newlib-2.4.0.20160527。 我已經實現_sbrk()如下: extern intptr_t g_bss_end; /* value after the last byte in .bss */
extern intptr_t g_msp_lim; /* stack buffer starts at this address