Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Fonctions fputs et puts

Entête à inclure

#include <stdio.h>  // <cstdio> en C++

Fonctions fputs et puts

int fputs( const char * string, FILE * stream );                          // Avant C99
int fputs( const char * retrict string, FILE * restrict stream );         // A partir de C99
int puts( const char * string );

Ces fonctions permettent d'écrire une chaîne de caractères sur un flux donné. La fonction fputs permet de spécifier le flux, alors que puts travaille forcément sur stdout. Notez aussi que puts ajoute automatiquement un retour à la ligne à la fin de la chaîne, contrairement à fputs.

Si vous souhaitez manipuler des chaînes de caractères non formatées, alors ces fonctions seront préférable à des appels à fprintf (ou printf). Effectivement, aucune recherche du caractère % ne sera effectuée. Il en résultera donc des temps d'exécutions plus rapides.

Paramètres

Valeur de retour

En cas de succès, une valeur positive doit être retournée. Par contre, en cas d'erreur, la valeur EOF sera retournée. Dans ce cas, il vous faudra alors consulter la variable errno pour obtenir de plus amples informations sur l'erreur constatée. Il vous sera aussi possible d'utiliser la fonction ferror.

Codes erreurs pouvant être retournés

EAGAIN : le flux est vérrouillé et il faudra tenter ultérieurement l'écriture.

EBADF : le descripteur de flux (FILE *) passé en paramètre est invalide ou ne permet pas l'écriture.

EIO : une erreur d'accès physique au flux vient d'être générée.

...

Exemple de code

#include <stdio.h>
#include <stdlib.h>

int main( int argc, char * argv[] ) {

    /* Notice that final new line character is implicit */
    puts( "Welcome to MegaApp V1.0" );    
    puts( "To be continued" );    
        
    return 0;
}

Sujets connexes

fgets
fputc
putc