Maison  >  Article  >  développement back-end  >  En langage C, les scansets (Scansets)

En langage C, les scansets (Scansets)

PHPz
PHPzavant
2023-09-08 23:21:031374parcourir

En langage C, les scansets (Scansets)

Voyons ce qu'est un ensemble d'analyses en langage C. Un jeu d'analyses est essentiellement un symbole spécifique pris en charge par la famille de fonctions scanf. Il est représenté par %[]. Dans un jeu d'analyse, nous ne pouvons spécifier qu'un caractère ou un groupe de caractères (sensible à la casse). Lorsqu'il s'agit de jeux de numérisation, la fonction scanf() ne peut traiter que les caractères spécifiés dans le jeu de numérisation.

Exemple

#include<stdio.h>
int main() {
   char str[50];
   printf("Enter something: ");
   scanf("%[A-Z]s", str);
   printf("Given String: %s", str);
}

Sortie

Enter something: HElloWorld
Given String: HE

Il ignore les caractères écrits en lettres minuscules. « W » est également ignoré car il est précédé de lettres minuscules.

Maintenant, si l'ensemble d'analyse a '^' en première position, le spécificateur arrête la lecture après la première occurrence de ce caractère.

Exemple

#include<stdio.h>
int main() {
   char str[50];
   printf("Enter something: ");
   scanf("%[^r]s", str);
   printf("Given String: %s", str);
}

Sortie

Enter something: HelloWorld
Given String: HelloWo

Ici, scanf() ignore les caractères suivants après avoir obtenu la lettre « r ». En utilisant cette fonctionnalité, nous pouvons résoudre le problème de scanf qui n'accepte pas les chaînes avec des espaces. Si nous utilisons %[^

] alors il obtiendra tous les caractères jusqu'à ce qu'un caractère de nouvelle ligne soit rencontré.

Exemple

#include<stdio.h>
int main() {
   char str[50];
   printf("Enter something: ");
   scanf("%[^</p><p>]s", str);
   printf("Given String: %s", str);
}

Sortie

Enter something: Hello World. This line has some spaces.
Given String: Hello World. This line has some spaces.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer
Article précédent:Champs de bits en CArticle suivant:Champs de bits en C