| 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
    Sådan Afvis de data, som overløb Mål
    Edb-programmer er ofte bruges til at udføre nogle meningsfuldt arbejde på data, der er sendt til det som input. For eksempel kan et program være skrevet til at udføre området beregninger på højde-og breddemål . Eftersom enhver nummer kan indsendes til programmet , der er den mulighed, at et input er for stor til at blive behandlet . Dette resulterer i et overløb , som forårsager ødelæggelse af data . Du kan bruge et programmeringssprog som C + + til at afvise data , der ville forårsage et overløb tilstand. Ting du skal
    C + + Integrated Development Environment (IDE ), såsom Eclipse CDT
    C + + Compiler , sådan en GCC
    vise flere Instruktioner
    1

    Ilæg C + + IDE ved at klikke på programmets ikon . Når den åbner , skal du vælge "File /New /Project" og vælg " C + + projekt" at oprette en ny C + + projekt. En kilde kode fil vises i teksteditoren del af IDE. Denne fil indeholder en automatisk genereret "main "-funktion , der tjener som en indgang for dit program. Du vil placere alle dine kode i de krøllede parenteser , der vises umiddelbart under "main "-funktionen .
    2

    Skriv følgende variable erklæringer mellem de krøllede parenteser i " main" -funktionen. De første to variabler bruges til at fange input fra tastaturet . De variabler ' "længde " og " bredde " hold dimensioner i en datatype kaldet " short ", som kun kan lagre værdier op til 32.767 før overfyldte. Den endelige variabel bruges til at lagre det område af dimensioner , og er af typen "lang ". Denne datatype kan lagre værdier op til 2.147.483.647 , hvilket er det dobbelte af den maksimale værdi mulig, når multiplicere to " shorts " sammen

    char * inputString ; .

    Char buffer [ 256 ] ;

    korte længde = 0;

    kort width = 5;

    lange område = 0;
    3

    Skriv en erklæring , der udskriver retninger brugeren til at indtaste længden dimension , som dette:

    printf ("Indtast længden dimension : \\ n ");
    4

    Skriv en erklæring , der fanger brugerens input fra tastatur ved hjælp af variablerne " inputString " og " buffer ", som dette : Hej

    inputString = fgets ( buffer , 256, stdin ),
    5

    Skriv et "hvis" erklæring om, at tests at se, om værdien brugeren input er større end hvad en kort er i stand til håndtering. Den maksimale værdi af en "kort" er gemt i konstant " SHRT_MAX . " Kontroller at se, hvis værdien er positiv, idet en overflowed værdi kan blive negativ og dimensioner er typisk kun positive værdier. Følgende "hvis" erklæring kontrol af overløb og udskriver en meddelelse, hvis overløb opstår:

    if ( atoi ( inputString ) > SHRT_MAX && atoi ( inputString ) > 0)

    { printf ( "Data afvist overfyldte dimension \\ n" );}
    6

    Skriv et " andet " erklæring , der kun kører , hvis den forudgående "hvis" erklæring vurderer som falsk . Dette sker, når værdien input er inden for det rigtige udvalg af værdier for "korte" datatyper.

    Ellers

    {}
    7

    Skriv to udsagn, der tildeler den " inputString " til " længde" variabel og multiplicerer det med bredden variabel. Placer følgende to udsagn i - mellem de krøllede parenteser , der umiddelbart følger " ellers " erklæring :

    længde = atoi ( inputString )

    areal = længde * bredde
    < br > 8

    Skriv en endelig opgørelse , der udskriver området. Placer denne under de udsagn skrevet i det sidste trin, og i-mellem de krøllede parenteser i " andet " erklæring : Hej

    printf (" Område: % d " , område ),
    9 < p> Tryk på den grønne "Play" -knappen for at udføre programmet. En kommandoprompt vises med en tekstlinje beder dig om at indtaste et nummer . Indtast i 32.768 , hvilket er en højere end " SHRT_MAX ", og følgende tekst er output:

    data afvist overfyldte dimension

    Forrige :

    næste :
      Relaterede artikler
    ·Fordele ved LINQ 
    ·Hvordan man skriver en definition for en Interleave fun…
    ·Sådan at slette poster i en C Program Array 
    ·Sådan Udskift Elements i et Array i C 
    ·Sådan bruges Stack STL Container Class 
    ·Hvad er en Xilinx XPS 
    ·Sådan Bubble Sorter i C 
    ·Sådan Split en streng i C 
    ·Visual Basic Tutorial 
    ·Værktøjer i programmering 
      Anbefalede Artikler
    ·Sådan fjernes Character Returns fra en streng Inden VB…
    ·Hvordan man skriver et grafikprogram 
    ·Sådan får Bytes Fra et Java Input Stream 
    ·Hvordan til at hoppe i ActionScript 
    ·Sådan kører PHP på Perl 
    ·Sådan Juster en tekstboks i Visual Basic NET Z-Index 
    ·Tutorial for at lave et spil i Java 
    ·Sådan Beregn GPA i C # 
    ·Hvordan man skriver pseudokode for Looking ord op i en …
    ·Update Column attribut er Null i MySQL 
    Copyright © Computer Viden http://www.computerdk.com