Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk menyahpepijat teras dalam C/C++?

Bagaimana untuk menyahpepijat teras dalam C/C++?

王林
王林ke hadapan
2023-09-14 21:33:021019semak imbas

Bagaimana untuk menyahpepijat teras dalam C/C++?

Apabila proses ditamatkan oleh sistem pengendalian disebabkan oleh ralat program, proses membuang teras. Sebab paling biasa ini berlaku ialah program mengakses nilai penunjuk yang tidak sah, seperti NULL atau beberapa nilai di luar kawasan ingatannya. Sebagai sebahagian daripada proses ini, sistem pengendalian cuba menulis maklumat kami ke fail supaya kami boleh menganalisis perkara yang berlaku.

Teras ini boleh digunakan untuk mendiagnosis dan nyahpepijat program kami seperti berikut -

Secara lalai, longgokan teras ke direktori /proc/sys/kernel. Untuk nyahpepijat kernel, program mesti disusun dengan pilihan -g. Sebaik sahaja anda mempunyai teras, jalankan gdb -

$ gdb  nameOfExecutable core

Ini akan membuka teras dalam gdb dan kini anda boleh meneruskan penyahpepijatan. Jika anda tidak tahu cara menggunakan gdb, anda boleh menggunakan pautan ini untuk mengetahui lebih lanjut: https://www.ibm.com/developerworks/library/l-gdb/

Atas ialah kandungan terperinci Bagaimana untuk menyahpepijat teras dalam C/C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam