| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
    Comment détecter Stack Overflow
    langages de programmation informatiques s'appuient sur ​​une structure de données en pile d'appel --- certains font de sa présence explicite pour le programmeur , alors que tous compter sur une pile pour les sauts de programme qui doit retourner à l'endroit où le programme original s'est arrêté après avoir exécuté une sorte de routine . Avant le transfert du contrôle de code d'utilisateur , un programme définit la taille maximale de la pile d'appel , parmi d'autres préparations . Parfois, un programme abandonne à cause d'une erreur de segmentation , qui peut être causée par une variété de facteurs. Vous pouvez facilement détecter un débordement de pile est à la racine du problème en utilisant un débogueur. Choses que vous devez
    code source pour le programme
    compilateur pour le programme
    Source niveau débogueur avec un support pour l'affichage d'une trace
    Voir Plus Instructions
    1 < p> recompiler le programme qui donne l' erreur de segmentation afin que tous les symboles de débogage sont liés en elle. Par exemple, pour un programme C + + sur un système d'exploitation avec la suite d'outils GNU , exécuter : l'option

    " g+ + - g program.c -o programme "

    où le " g " indique au compilateur d' inclure des symboles de débogage.
    2

    exécuter le programme jusqu'à ce qu'il s'arrête à cause d' une erreur de segmentation . Pour l'exemple , exécutez :

    «programme»
    3

    Invoke le débogueur sur le droit de programme après l' erreur de segmentation . Pour l'exemple , exécutez :
    " programme de gdb "


    4

    Afficher une trace en utilisant le débogueur. Tous les débogueurs au niveau source ont la capacité d'afficher la chaîne des appels de fonction imbriqués au moment du plantage du programme . Pour notre exemple « gdb », entrer à l'intérieur " gdb : "

    " trace "
    5

    Examinez la trace des signes d' une récursion infinie . Est un nom de fonction répété plus de fois que nécessaire avant le crash ? Sont quelques-unes des fonctions qui s'appellent mutuellement ( par exemple , la récursion mutuelle) trop de temps avant l'accident ? Si la réponse à ces deux questions est «oui », le programme s'est arrêté en raison d'un débordement de pile. La cause la plus probable des débordements de pile en langages de haut niveau sont mal codé cas de base.

    Previous :

    next :
      articles connexes
    ·Comment faire pour convertir la chaîne à une zone de …
    ·Différences entre Vs tableau d'octets. Chaîne 
    ·Comment construire des formes à l'aide Cold Fusion 
    ·Comment afficher une valeur dans un MATLAB Chaîne 
    ·Common Lisp moteur de rendu HTML & Binding 
    ·Comment utiliser l'éditeur d' échantillon 
    ·Comment créer connecter en HTML 
    ·Comment lire les fichiers au Scala 
    ·Comment remplir un tableau dans MATLAB 
    ·Comment formater un Dump Stream XMPP 
      articles en vedette
    ·Comment faire pour supprimer la Publication de l'heure …
    ·Comment faire pour convertir InstallScript MSI 
    ·Lightbox Vs . Lightbox 2 
    ·Comment faire pour convertir un Datestamp 
    ·Comment calculer le pourcentage de changement en PHP et…
    ·Traversant par une variable de chaîne en Java 
    ·Comment convertir une vidéo au format FLV à partir d'…
    ·Comment faire pour utiliser un en-tête PHP 
    ·Comment faire un fichier CFG Avec Visual C 
    ·Comment insérer VB dans Flash 8 
    Copyright © Connaissances Informatiques http://fr.wingwit.com