Connaissances Informatiques >> programmation >> C /C + + Programming >> Content
  Derniers articles
  • Comment prendre une chaîne à parti…
  • Comment écrire une définition pour…
  • Comment écrire un programme C pour …
  • Comment insérer une nouvelle ligne …
  • Comment compiler C Source Avec Visua…
  • Comment créer un fichier binaire de…
  • Comment débogage dans Visual C + + 
  • Comment tester pour l'automatisation…
  • Tutoriel pour écran en C + + 
  • Quelle est la syntaxe structurale ou…
  •   C /C + + Programming
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    C /C + + Programming

    Différence entre fgetc et getc

    Le langage de programmation C vous permet d'obtenir des données d'un fichier ou le clavier en utilisant les fonctions fgetc ou getc . Les deux fonctions prennent le caractère suivant disponible à partir d'un flux de données et les stocker comme un unsigned char . Ces deux fonctions sont utilisées dans le même but et peut être utilisée indifféremment si certaines précautions sont prises . La mise en œuvre

    Il ya souvent beaucoup de moyens légitimes pour accomplir une tâche de programmation en utilisant l'instance language.For C , à la fois fgetc et getc font partie de la norme C fichier include " stdio.h " . Fgetc est implémenté comme une fonction en langage C . Getc , d'autre part , peut être trouvé en fonction ou comme une macro . Par exemple , vous pouvez trouver getc inclus dans le fichier " stdio.h " comme le code suivant :

    # define getc ( f) ( ( - (( f) -> niveau ) > = 0) ( unsigned char ) (+ + ( f) -> CURP ) [-1] : ? _fgetc ( f) )

    Chaque fois que le préprocesseur C analyse votre code source et trouve l'identifiant " getc " avec des paramètres enfermés dans des parenthèses, il insère ces paramètres dans le jeton de remplacement qui définit getc . Tant que les paramètres ne sont pas des expressions , la macro renvoie toujours le même résultat que fgetc .
    Performance

    getc est parfois mis en œuvre comme une macro pour améliorer les performances de l'application en augmentant la vitesse d'exécution et de réduire la charge de traitement . Lorsque vous utilisez fgetc dans un programme, les ressources du processeur et de la mémoire sont dépensés suivi de l'exécution des instructions de la fonction , les variables de registre créées ainsi que le travail réel qui doit être fait pour revenir un personnage à partir du flux de données. Depuis la macro getc est compilé en ligne avant que le programme fonctionne toujours , il n'y a pas de fonction de tête et votre application peut courir plus vite.
    Side Effects

    Parfois, il est préférable d'utiliser fgetc au lieu de getc afin d' éviter les bogues causés par les effets secondaires d'extension macro . Les effets secondaires peuvent se produire quand une macro getc est donnée paramètres qui sont des expressions plutôt des variables. L'expansion de macro incorrecte peut entraîner de multiples tentatives d'accès au flux de données qui peut produire des résultats inattendus. Cela peut être évité en utilisant fgetc place ou en évaluant l'expression d'abord, puis en passant la variable résultant ou un pointeur vers getc .
    Croix Compatibilité

    fgetc en fonction est trouvé dans tous les compilateurs C qui sont conformes à la American National Standards Institute ou la norme ANSI C . Quand il s'agit de getc , cependant, les choses ne sont souvent pas tellement standard . Parfois , getc est défini comme étant simplement un autre nom pour fgetc :

    # define getc ( __stream ) fgetc ( __stream )

    Lorsque getc est mis en œuvre en fonction , cependant, vous maintenez simultanément la compatibilité de la langue avec d'autres compilateurs C et d'éliminer la possibilité d'effets secondaires macro .

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment faire un jeu de Pong en C + + 
  • Faits sur Video Game Programming 
  • Comment accéder à la bibliothèque MSDN en C + + 
  • Comment obtenir un décalage de chaîne dans un fichier RPC 
  • Comment: GTK Couleur Sélection 
  • Après avoir sélectionné une date dans Picker DateTime, Comment contrôlez-vous la Focus C 
  • Comment faire pour déclarer des fonctions inline dans C + + 
  • Comment passer une variable en C 
  • Comment apprendre le C # Step- by-Step 
  • Comment afficher GridView sur une page séparée 
  • Connaissances Informatiques © http://www.ordinateur.cc