Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
  Derniers articles
  • Comment faire pour créer une clé d…
  • Comment faire pour convertir RPC DLL…
  • Comment ouvrir un fichier dans C + +…
  • Comment réparer Microsoft Visual C …
  • Comment stocker une entrée dans un …
  • Comment simuler un modèle de code 
  • Description d'une fonction C + + et …
  • Comment faire un bouton sonore dans …
  • Comment tester pour l'automatisation…
  • Comment faire un programme en utilis…
  •   C /C + + Programming
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    C /C + + Programming

    Les inconvénients de pointeurs en C

    Dans le langage de programmation C , les pointeurs des informations d'adresse du magasin pour les emplacements de mémoire dans l'ordinateur . Ils permettent également un programme pour permettre à demander à l'ordinateur pour la mémoire (ou mémoire " Occupation" ) lors de l'exécution . Parce pointeurs face à mémoire dynamique , ils viennent avec certains dangers et les inconvénients malgré leur nécessité. Fuites de mémoire

    Quand un programme demande la mémoire grâce à l'utilisation d'un pointeur , ce pointeur doit continuellement référence à la mémoire allouée . Si à tout moment un emplacement de mémoire allouée n'a pas de pointeur correspondant (si tous les pointeurs faisant référence à la mémoire des " pointes " d'ailleurs) , que la mémoire ne peut plus être consultée par le programme. Cette mémoire est désormais « orphelins ». Toutefois, l'ordinateur considère toujours cette mémoire allouée . En tant que programme fonctionne en permanence , et les mêmes lignes de code sont exécutés des millions de fois , une erreur dans l'allocation de mémoire par une erreur de pointeur peuvent remplir rapidement la mémoire disponible avec les données inaccessibles , provoquant une fuite de mémoire.
    pointeurs NULL

    pointeurs qui ne se réfèrent pas à une adresse en mémoire sont appelés pointeurs "null" . Bien qu'elles remplissent des fonctions utiles à la programmation (comme signifiant erreurs d'allocation mémoire ) , un problème majeur se produit lorsque " déréférencement " un pointeur nul ( déréférencement d'un pointeur moyens pour accéder aux données à l'emplacement de mémoire référencé par le pointeur ) . Quand on écrit un programme , pas de contrôles de sécurité manipuler le déréférencement d'un pointeur NULL. En effet, un vaste programme ne peut accidentellement déréférencer un pointeur NULL , quelque part au fond de millions de lignes de code. Lorsque le code est exécuté , cependant, un pointeur null déréférencé causera un programme visant à planter.
    Buffer Overflow

    Un dépassement de mémoire ( ou " buffer overflow " ) se produit lorsque la mémoire allouée par un pointeur n'est pas assez grande pour l'entrée qu'il reçoit. Par exemple, si un programme alloue de la mémoire pour un mot de sept caractères et reçoit en entrée un mot neuf caractères , les deux personnages supplémentaires sont stockés en mémoire en dehors de la mémoire de pointeurs de sept caractères . Les deux personnages supplémentaires écrasera tout ce qu'il contient. Il n'existe aucun moyen pour le programme de connaître ce qui existe dans ces deux emplacements de mémoire supplémentaires . Ils pourraient contenir des données sensibles pour le programme ( comme les variables du programme ) , ou même pour l'ordinateur lui-même. Cela conduit à la «corruption des données, " car les données qui auraient dû être intact en dehors de la mémoire allouée est maintenant compromise.

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment faire pour configurer Joomla débogage dans Eclipse 
  • Comment déboguer une fuite de mémoire en C + + 
  • Comment changer la couleur en C + + 
  • Comment faire pour convertir QString à Int 
  • Comment compiler un C + + dans Dev- C 
  • Les erreurs de syntaxe en C + + 
  • Comment utiliser les fichiers FX dans GTK Radiant 
  • Comment programmer l' opérateur reste 
  • Comment utiliser la surcharge d'opérateur en C + + 
  • Comment utiliser la fonction Memset en C + + 
  • Connaissances Informatiques © http://www.ordinateur.cc