| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
    Comment utiliser les fonctions de paramètres variables dans C + +
    La plupart des fonctions acceptent un nombre fixe d' arguments. Certaines applications nécessitent toutefois des fonctions d'accepter des paramètres variables . Un exemple bien connu est la fonction d'impression de C. Pour de tels cas , C + + offre une solution puissante qui permet au compilateur de déchiffrer les arguments au moment de l'exécution. Lire la suite pour un tutoriel qui montre comment implémenter ces fonctions. Choses que vous devez
    intermédiaire C + +
    compilateur C + + avec l'IDE , tels que Microsoft Visual C + +
    Afficher plus Instructions
    1

    Ajouter le fichier de bibliothèque dans stdarg.h votre programme. C'est là que vous définissez les macros. Sur la première ligne du fichier , insérez # include .
    2

    utiliser les macros va_arg , va_start et v_end qui collaborent avec le va_type dans stdarg.h .
    3

    Établir une variable de type va_list à fonctionner comme un marqueur de la liste.
    4

    Accédez aux paramètres individuels à l'aide de la macro va_arg . Trouvez une façon de dire à la macro va_arg ce type d' argument que vous voulez pour récupérer de fournir le nombre exact d'octets de la pile.
    5

    Jetez le résultat de l'étape 4 pour le type que vous voulez être.
    6

    appeler la macro va_end à la fin du traitement des paramètres variables .
    7

    Regardez l' exemple ci-dessous qui montre les étapes 2 à 6. Fonction accepte myprintf une chaîne de format qui spécifie le type et la position de chaque argument. Suite à la chaîne de format est la liste des arguments. La fonction affiche les arguments. Pour simplifier, on ne peut traiter que int, float et char: Photos //déclaration
    vide myprintf (char * Le format , ...);
    //défintion
    vide myprintf (format char * . ..) {
    va_list vl ;
    int i;
    va_start ( vl, args) ;
    for (i = 0; args [ i] = '\\ 0' ; ! + + i) {
    union any_t {
    int i;
    float f ;
    char c ; }
    tout ;
    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, char) ;
    printf ("% c \\ n", any.c ) ;
    } else {

    jeter UneException ;
    }
    va_end ( vl ) ; }


    Previous :

    next :
      articles connexes
    ·Comment faire pour mettre tableau d'entier dans la fonc…
    ·Comment faire pour utiliser des modèles de fonction en…
    ·Comment savoir à partir d'un fichier externe en C + + 
    ·Comment construire un arbre Asterisk en C + + 
    ·Dynamique Appel de fonctions dans les DLL 
    ·Quelle est la différence entre le privé et public les…
    ·Comment faire un graphique en mouvement en C # 
    ·Comment réparer le GCC Attention implicit declaration …
    ·Comment Correction d'un échec d'assertion Visual C 
    ·Comment apprendre le C + + Héritage Rapidement 
      articles en vedette
    ·Comment formater nombres de Fibonacci en C + + 
    ·Apprendre Java ligne 
    ·Comment résoudre la variable d'URL en PHP 
    ·Tutoriel pour écran en C + + 
    ·Comment utiliser SetHeader de réponse 
    ·Comment utiliser les composants ActiveX en mode ASP 
    ·Comment lire une valeur de ComboBox 
    ·Méthodes ArrayList en Java 
    ·Comment boucle sur les codes précédents en Python 
    ·Comment ouvrir un programme avec Visual Basic 
    Copyright © Connaissances Informatiques http://fr.wingwit.com