Maison > développement back-end > C++ > le corps du texte

Comment vérifier efficacement les préfixes et convertir des sous-chaînes en entiers en C ?

Susan Sarandon
Libérer: 2024-10-31 10:05:02
original
796 Les gens l'ont consulté

How to Efficiently Verify Prefixes and Convert Substrings to Integers in C  ?

Vérification efficace des préfixes et conversion de sous-chaînes en entiers en C

La nécessité de vérifier si une chaîne commence par un préfixe spécifique et de convertir une sous-chaîne à un entier est une tâche courante en programmation. En Python, cela peut être facilement réalisé en utilisant les fonctions startupswith() et int(). Cependant, implémenter des fonctionnalités similaires en C nécessite une approche différente.

Pour vérifier si une chaîne C std::string commence par une certaine chaîne, vous pouvez utiliser la fonction rfind() avec le paramètre de position pos défini sur zéro. Cela limite la recherche au préfixe situé au début de la chaîne ou avant. Par exemple, pour vérifier si argv[1] commence par "--foo=":

if (argv[1].rfind("--foo=", 0) == 0) {
  // argv[1] starts with "--foo="
}
Copier après la connexion

Pour convertir une sous-chaîne en entier, vous pouvez utiliser la fonction stoi(). Cependant, puisque rfind() renvoie une position, vous devrez d'abord extraire la sous-chaîne. Voici un pseudocode Python mis à jour :

if argv[1].startswith('--foo='):
    foo_value = int(argv[1]['--foo='.len():])
Copier après la connexion

En C , cela se traduirait par :

size_t pos = argv[1].rfind("--foo=", 0);
if (pos != std::string::npos) {
  foo_value = std::stoi(argv[1].substr(pos + 6));
}
Copier après la connexion

Cette approche est efficace et simple, ne nécessitant aucune bibliothèque externe ni complexité supplémentaire. Il fournit une solution concise et efficace pour la vérification des préfixes et la conversion des sous-chaînes en C .

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal