| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> C /C + + Programming >> Content
    Las desventajas de punteros en C
    En el lenguaje de programación C , los punteros almacenan información de dirección de posiciones de memoria en el ordenador. También permiten que un programa que permite hacer la computadora para la memoria ( o la memoria " asignar" ) durante la ejecución. Porque punteros ocupan de la memoria dinámica , vienen con ciertos peligros e inconvenientes a pesar de su necesidad. Pérdidas de memoria

    Cuando un programa de solicitudes de memoria a través del uso de un puntero , que debe hacer referencia continuamente puntero de la memoria asignada . Si en cualquier momento una ubicación de memoria asignada no tiene un puntero correspondiente ( si todos los punteros referentes a la memoria son " puntas" en otra parte) , que la memoria ya no puede ser visitada por el programa . Esta memoria está " huérfana ". Sin embargo , el equipo aún considera esta memoria asignada . Como programa funciona de forma continua , y las mismas líneas de código se ejecutan millones de veces , un error en la asignación de memoria por un error del puntero pueden llenar rápidamente la memoria disponible con los datos inaccesibles , causando una pérdida de memoria .
    punteros nulos

    punteros que no se refieren a una dirección en la memoria se llaman punteros " nulos " . Mientras que sirven funciones útiles en la programación ( tales como significando errores de asignación de memoria ) , un problema importante se produce cuando " eliminación de referencias a " un puntero nulo ( eliminación de referencias significa un puntero para acceder a los datos en la ubicación de memoria hace referencia el puntero ) . Cuando se escribe un programa , hay controles de seguridad manejar la eliminación de referencias de un puntero nulo. De hecho , un gran programa sólo podrá eliminar la referencia accidentalmente a un puntero nulo , en algún lugar profundo en millones de líneas de código. Cuando se ejecuta el código, sin embargo, un puntero nulo desreferenciado hará que un programa deje de funcionar.
    Buffer Overflow

    una saturación de memoria ( o " buffer overflow " ) se produce cuando la memoria asignada por un puntero no es lo suficientemente grande para la entrada que recibe. Por ejemplo , si un programa asigna memoria para una palabra siete caracteres de longitud , y recibe como entrada una palabra de nueve caracteres de longitud , el extra de dos caracteres se almacenan en la memoria fuera de la memoria puntero de siete caracteres . El extra de dos personajes sobrescribir cualquier cosa contenida en el mismo. No hay manera para que el programa de saber lo que existe en las dos posiciones de memoria adicionales . Podrían contener datos sensibles para el programa (por ejemplo, las variables del programa ) , o incluso de la propia computadora . Esto conduce a la "corrupción de datos", ya que los datos que deberían haber sido intacta fuera de la memoria asignada está ahora en peligro.

    Previous :

    next :
      Artículos relacionados
    ·Cómo sumar dos matrices uso de punteros 
    ·Visual C Component Object Model Tutorial 
    ·Cómo asegurar que se elimina un objeto en C + + 
    ·Como exponentes de Entrada en C 
    ·Cómo escribir un archivo Hex 
    ·Cómo Referencia C DLL en Net 
    ·Cómo representar un círculo en OpenGL 
    ·Cómo introducir una mezcla de números y letras de un …
    ·Cómo ejecutar un desarrollador iPhone Xcode 
    ·Cómo Ignorar espacios en el uso de Largo C + + 
      Artículos destacados
    ·Cómo utilizar el desplazamiento de bits en Criptografí…
    ·Cómo imprimir una salida de matriz en orden inverso en…
    ·Cómo integrar SRC dinámico en HTML 
    ·Características de Visual Basic 
    ·Cómo agregar Video Overlay de PHP Motion 
    ·Cómo crear tablas en HTML 
    ·Paquete Tutorial MSI 
    ·Cómo diseñar Editor Uso de OpenGL 
    ·Cómo escribir números octales en PHP 
    ·Cómo hacer una barra de herramientas para el Reaparece…
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com