Les partenaires publicitaires:

Comment lire une chaîne dans c

Le langage de programmation C ne fournit pas un type de données de chaîne réelle. En C, une chaîne est émulé par un tableau de caractères qui se termine par NULL. Un tel réseau peut être déclarée statique ou comme un pointeur. Norme C fournit de nombreuses fonctions pour manipuler des tableaux de caractères ou des chaînes C. Cet article se concentre sur les fonctions qui lisent à partir du flux d'entrée et de fichiers. Suivez ces conseils pour apprendre à lire une chaîne en C.

Choses que vous devez

  • C / C ++ IDE ou compilateur C
  • Livre de C, tel que "The C Programming Language" par Brian W. Kernighan

Instructions

  1. Comprendre les bases. Une chaîne de C est un tableau de type tableau. Comme avec toutes les matrices de carbone, le premier élément est indexé à 0, et le dernier à "longueur de chaîne moins 1." Habituellement, le compilateur insère NULL à la dernière position, de sorte que la chaîne peut contenir "longueur de chaîne moins 1" éléments. NULL est équivalent à 0x00 sous forme entière et ' 0' dans la forme char. Les éléments sont accessibles par le "[]" opérateur. Étape 2 illustre ces concepts.

  2. Ajouter la "directive include" ci-dessous pour tout fichier source avant d'utiliser les fonctions de ce tutoriel:


    #include lt; stdio.h gt;


  3. Déclarer une chaîne C. Le code ci-dessous montre une déclaration selon le statique et le pointeur de méthode:


    // Déclaration statique

    omble str [50] = {0} - // raccourci pour initialiser tous les éléments à 0

    // Str [49] est NULL

    // Str a une capacité de 48 caractères

    // Déclaration de pointeur

    char * PStr = null-// aucune allocation mémoire

    PStr = (char *) malloc (50) - // cela se fait en "malloc ()"



  4. Lire les données en une chaîne de C à l'aide "scanf ()," qui lit une série de chaînes séparées par l'espace à partir de l'entrée standard et les place dans les adresses appartenant à des variables de référence appropriés, selon un "chaîne de format":


    int n-
    printf ("Entrez votre prénom et l'âge: ") -

    scanf ("% S% d", Str, &n) - //

    printf ("Votre nom est% s et vous êtes% d vieille n", Str, n) -

  5. Placer les données dans une chaîne de C en utilisant la simple "gets ()" fonction, qui lit des données à partir de l'entrée standard en une chaîne uniquement:


    printf ("Vous entrez Nom: ") -

    gets (str) -

    printf ("Votre nom est% s n", Str) -
  6. Lire les données du fichier dans une chaîne de C à l'aide "fscanf ()"- Cette fonction est analogue à "scanf ()":


    FILE * pFile-

    pfile = fopen ("monFichier.txt", "r") - // Suppose que le fichier existe et a des données

    if (NULL! = pfile) {

    fscanf (pfile, "% S", Str) -

    printf ("Le premier mot dans le fichier est% s n", Str) -

    fclose (pfile) -

    }
  7. Répétez l'étape 5 à l'aide "fgets ()," qui fonctionne de la même que "gets ()":


    FILE * pFile-

    pfile = fopen ("monFichier.txt", "r") -
    if (NULL! = pfile) {

    fgets (pfile, str) -

    printf ("Le premier mot dans le fichier est% s n", Str) -

    fclose (pfile) -

    }

Conseils & Avertissements

  • Pour en savoir plus sur les fonctions mentionnées, visitez le site Web C Plus Plus.
  • Ne pas essayer de compiler ce code. Il est uniquement destinée à démontrer les fonctions. Il est pas un programme cohérent et donnera des erreurs lors de la compilation.
» » » » Comment lire une chaîne dans c