Kimutatása memóriavesztés c
Kimutatása memóriavesztés C
Írásakor programok használata, a memória dinamikus (malloc függvény calloc, realloc, ingyenes), meg kell emlékezni, hogy kiadja az összes elveszett memóriát. „Memóriaszivárgás” kifejezés olyan helyzet, amikor bármilyen okból, a program nem mentesíti memória, amely már nem használják. Meg kell tudni, hogy észlelje ezeket a problémákat!
A következő gyakorlati tanácsokat kimutatására memóriavesztés függően a fordító.
A Microsoft Visual C Compiler / MS Windows
Kezdetben a program hozzá a következő sort (fontos ahhoz, hogy a sorrendben!)
majd adja hozzá a végén a fő funkciója hívás
Ez a funkció kiírja az üzenetet a Kimenő ablak információt memóriavesztés, ha van ilyen.
Az alábbiakban egy példát egy ilyen üzenet
A következő információkat memóriavesztés: a helyet a fájlt, ahol a memória különítettek, az összeg a lefoglalt memória és annak tartalmát.
Gcc / Linux
Kezdetben a program, a következő sort
és a kezdetektől fogva a fő funkciója hívás
Akkor csak a program futtatása után a segédprogram mtrace
Következtetés mtrace segédprogram tájékoztat a memóriavesztés és a helyét a fájlt, ahol a memória különítettek, és a kiosztott memória méretét.
Gcc (MinGW) / MS Windows
Módosításai forráskódját a program szükséges. Meg kell fordítani a program az alábbi zászlók:
Ezután a program futtatásával segítségével Dr. Memória:
A kimeneti információkat tartalmaz meglévő problémákat, ha dolgozik, dinamikus memória, különösen körülbelül memóriavesztés:
Azt is talál információt a forrása szivárgás a forráskód a program, és a helyét a fájlban.