Avatar ·

Comment obtenir automatiquement la stacktrace lors d'un crash de programme en C++ ?

Bonjour à tous ! J'écris en C++ sous Linux avec le compilateur GCC, et j'ai constamment des problèmes pour déboguer des bugs difficiles à reproduire. Le programme plante avec une segmentation fault, mais je n'arrive pas à comprendre où cela se produit exactement, car le crash survient rarement et à des endroits aléatoires. J'utilise déjà des assert, mais ils ne m'aident pas lorsque le bug est lié à une corruption mémoire ou à un dépassement de buffer. Je souhaite que lors de n'importe quel crash (SIGSEGV, SIGABRT, SIGFPE, etc.), le programme affiche automatiquement la stacktrace complète avec les noms des fonctions, les fichiers et les numéros de lignes. Voici un exemple de mon code qui plante : ```cpp #include #include void dangerous_function(int* ptr) { *ptr = 42; // Ici peut se produire un segfault si ptr == nullptr } int main() { std::vector vec(10); ```