BRUTE AE: 11nova-malloc: Test: Space overhead
Dobrý den, nevím si rady s tímto testem. Z nějakého důvodu my u více jak 2000. volání my_malloc vrací NULL adresu, zkoušel jsem různé úpravy, ale nic nepomohlo. Mám pocit že chyba se nachází v break - jelikož při tomto posledním volání se break posune pouze o jedno místo, tudíž malloc vrátí NULL. Test jsem zkoušel vytvořit lokálně, ale nelze spustit pro 8192 opakování, maximálně pro 512 (kdy v pořádku vše funguje). Kontrolní printy převadí hodnoty pointerů na 10 soustavu, aby se dala lépe kontrolovat naváznost, ale nic jsem nenalezl. Předem děkuji.
`for (size_t i = 0; i < count; i++) { addr = my_malloc(16); if(addr == 0) while(1); arr[i] = addr; printf("%d Malloc %d\n", i, arr[i]);
}
for (size_t i = 0; i < count; i++)
{
err = my_free(arr[i]);
printf("%d freed %d -> %d\n",i ,arr[i], err);
if(err != 0) while(1);
}
`
Keep this URL here: https://cw.felk.cvut.cz/brute/data/ae/release/2023z_b4b35osy/11nova-malloc/cviceni/ae/results/results.php?&idg=napravoj&idu=10553&upload=1646439&result=1200693#test-8