| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> C /C + + Programming >> Content
    Ulemperne ved pegepinde i C
    I C programmeringssprog, pointers butik adresse oplysninger for lagerpladser i computeren. De tillader også et program til at tillade bede computeren i hukommelsen (eller " afsætte " memory ) under udførelsen. Fordi pointers beskæftige sig med hukommelse dynamisk , de kommer med visse farer og ulemper på trods af deres nødvendighed. Memory leaks

    Når et program anmoder om hukommelse ved hjælp af en pegepind , skal denne pointer tiden referere hukommelsen tildelt . Hvis der på noget tidspunkt en placering af allokeret hukommelse ikke har en tilsvarende pointer ( hvis alle pejlemærker refererer til den hukommelse er " spidse " andetsteds) kan at hukommelsen ikke længere tilgås af programmet. Denne hukommelse er nu " forældreløse ". Men computeren stadig anser denne hukommelse allokeret . Som et program kontinuerligt kører , og de samme linjer kode udføres millioner af gange , en fejl i hukommelsen tildelingen af en pointer fejl kan hurtigt fylde tilgængelige hukommelse med utilgængelige data , der forårsager en hukommelsesfejl .
    null pointers

    pointers der ikke henviser til en adresse i hukommelsen kaldes " null " pointere. Mens de tjener anvendelige funktioner programmering ( f.eks tilkendegiver hukommelse tildeling fejl ), et stort problem opstår, når " dereferere " en null- pointer ( dereferere en pointer betyder at få adgang til data på hukommelsesplads refereres af markøren ) . Når et program er skrevet, ingen sikkerhed kontrollerer håndtere dereference en null-pointer . I virkeligheden, kan et stort program kun uheld dereference en null- pointer , et sted dybt inde i millioner af linjer kode. Når koden er udført , dog vil en derefererede null pointer forårsage et program til at gå ned.
    Buffer Overflow

    En hukommelse overskridelse (eller " buffer overflow " ) opstår, når hukommelse tildelt af en pointer er ikke stor nok til input , den modtager . For eksempel, hvis et program allokerer hukommelse til et ord syv tegn og modtager som input et ord ni tegn er de ekstra to tegn gemt i hukommelsen uden for syv tegn pointer hukommelse. De ekstra to tegn overskriver noget , der er indeholdt heri. Der er ingen måde , at programmet til at vide , hvad der findes i de ekstra to hukommelsespladser . De kan indeholde følsomme data for programmet (såsom program variable) , eller endog for selve computeren. Dette fører til " data korruption ", som data, der skulle have været intakt uden den tildelte hukommelse nu er kompromitteret .

    Forrige :

    næste :
      Relaterede artikler
    ·Sådan Konverter INT Variabel til String 
    ·Sådan slettes en trykknap på Visual C 
    ·Sådan læses en Random Linje Fra en fil i CSH 
    ·Sådan Konverter BitArray til Byte 
    ·Typer af bufferoverløb Attacks 
    ·Hvad er en ISO Programmør 
    ·Hvordan man laver en grundlæggende spil i C + + 
    ·Hvordan man skriver en Test Plan 
    ·Sådan har nullable variabler 
    ·Hvad er formålet med en Data Flow Diagram 
      Anbefalede Artikler
    ·Sådan tilsidesætte et accessor metode i Objective -C 
    ·Formål med Java Applets 
    ·Sådan deaktiveres Datoer i DateTimePicker i Visual Bas…
    ·Sådan oprettes en hjemmeside skabelon med PHP 
    ·Forklaring af Filler i et COBOL Program 
    ·Hvad er forskellen mellem JVM Hukommelse & Heap Size 
    ·Sådan Stream Video i XCode 
    ·Microsoft Visual Basic for Applications Tutorial 
    ·Sådan Gør kolonner ved hjælp af DIV Tags 
    ·Cookies Vs . Sessioner 
    Copyright © Computer Viden http://www.computerdk.com