Datamaskin
  | Hjem | Hardware | Nettverk | Programmering | Software | Feilsøking | Systems | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringsspråk
  • Delphi Programming
  • Java Programming
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl Programming
  • Python Programming
  • Ruby Programming
  • Visual Basics Programming
  •  
    Datamaskin >> Programmering >> C /C + + Programming >> Content
    Hvordan bruke Variable parameterfunksjonene i C + +
    De fleste funksjonene godta et fast antall argumenter. Noen anvendelser krever imidlertid funksjoner for å ta imot variable parametere . Et velkjent eksempel er print funksjon av C. For slike tilfeller , C + + tilbyr en kraftig løsning som lar kompilatoren dechiffrere argumentene under kjøring. Les videre for en tutorial som demonstrerer hvordan å implementere slike funksjoner . Du trenger
    Intermediate C + + Online C + + kompilator med IDE , for eksempel Microsoft Visual C + +
    Vis flere instruksjoner
    en

    Legg til STDARG.H bibliotek filen inn programmet . Det er der du definere makroer . På den første linjen i filen , setter # include .
    2

    Bruk makroer va_arg , va_start og v_end som samarbeider med va_type i stdarg.h .
    3

    etablere en variabel av typen va_list å fungere som en liste markør.
    4

    tilgang til de enkelte parametere ved hjelp av va_arg makro. Finn en måte å fortelle va_arg makro hva slags argument du vil den skal hente å levere riktig antall bytes fra bunken.
    5

    resultatet fra trinn 4 til den typen du vil ha det å være.
    6

    Ring va_end makro til å avslutte behandlingen av variable parametre .
    7

    Se på eksempelet nedenfor som viser trinn 2 til 6 . Funksjon aksepterer myprintf et format streng som angir type og plassering av hvert argument . Etter format string er listen over argumenter. Funksjonen skriver ut argumentene . For enkelhets skyld kan det bare behandle int , float og røye : Twitter //erklæring
    void myprintf ( char * format , ...); Twitter //defintion
    void myprintf ( char * format, . ..) {
    va_list vl ;
    int i;
    va_start ( vl , args ) ;
    for (i = 0; args [ i] = '\\ 0 '; ! + + i) {
    union any_t {
    int i;
    float f ;
    røye c ;
    } noen;
    if ( args [ i] == 'i' ) {
    any.i = va_arg ( vl , int ) ;
    printf ( "% i \\ n" , any.i ) ;
    } else
    if ( args [ i] == ' f' ) {
    any.f = va_arg ( vl , float ) ;
    printf ( "% f \\ n" , any.f ) ;
    } else
    if ( args [ i] == ' c' ) {
    any.c = va_arg ( vl , røye ) ;
    printf ( "% c \\ n" , any.c ) ;
    }
    else {
    kaste SomeException ;
    }
    va_end ( vl ) ;
    }

    früher :

     Weiter:
      Relatert Artike
    ·Hvordan alfabetisere en Array i C + + 
    ·Slik formaterer innhold Inne i en UIScrollView 
    ·Hvordan Link OBJ -filer i Turbo C + + 
    ·Hvordan sende parametre til MVC Vis 
    ·Hvordan lage en Basic spill i C + + 
    ·Hvordan lage en Web Mashup 
    ·Hvordan Design en digital klokke 
    ·Hvordan lage Random Number Codes Kun Selv på C + + 
    ·Hvordan bruke Operator Overbelastning i C + + 
    ·Ring Funksjon Object C + + Syntax 
      Anbefalte artikler
    ·Hvordan åpne Paper Port filer 
    ·Hvordan lage en ASCII String i VBScript 
    ·Hvordan lage en Blinker Button i VB 
    ·Hvordan bruke Brødsmuler i Masterpage 
    ·Hvordan bygge din egen Web Content Management System 
    ·Hvordan sjekke Scripts i MySQL 
    ·Slik formaterer Brøker i Java 
    ·Hvordan lage spill Bruke Python for nybegynnere 
    ·Hvordan lage et PHP kontaktskjema på GoDaddy 
    ·Bruk av Acrobat i VB 
    Copyright ©  Datamaskin  http://www.datamaskin.biz/