Maison >développement back-end >C++ >Quelle est la traduction de la fonction wcstoll() en C/C++ ?

Quelle est la traduction de la fonction wcstoll() en C/C++ ?

王林
王林avant
2023-09-15 17:17:02944parcourir

La fonction

Quelle est la traduction de la fonction wcstoll() en C/C++ ?

wcstoll() est utilisée pour convertir une chaîne large en entier long. Il définit le pointeur pour qu'il pointe vers le premier caractère après le dernier caractère. La syntaxe est la suivante.

long long wcstoll(const wchar_t* str, wchar_t** str_end, int base)

Cette fonction nécessite trois paramètres. Les paramètres sont les suivants -

  • str: C'est le début d'une large chaîne.
  • str_end : La fonction définit str_end sur le caractère suivant après le dernier caractère valide s'il y en a, sinon nul.
  • base : C'est la base désignée. La valeur de base peut être (0, 2, 3,…, 35, 36)

Cette fonction renvoie l'entier long long converti. Lorsque le caractère pointe vers NULL, 0 est renvoyé.

Exemple

#include <iostream>
using namespace std;
main() {
   //Define two wide character string
   wchar_t string1[] = L"777HelloWorld";
   wchar_t string2[] = L"565Hello";
   wchar_t* End; //The end pointer
   int base = 10;
   int value;
   value = wcstoll(string1, &End, base);
   wcout << "The string Value = " << string1 << "\n";
   wcout << "Long Long Int value = " << value << "\n";
   wcout << "End String = " << End << "\n"; //remaining string after long long integer
   value = wcstoll(string2, &End, base);
   wcout << "\nThe string Value = " << string2 << "\n";
   wcout << "Long Long Int value = " << value << "\n";
   wcout << "End String = " << End; //remaining string after long long integer
}

Sortie

The string Value = 777HelloWorld
Long Long Int value = 777
End String = HelloWorld
The string Value = 565Hello
Long Long Int value = 565
End String = Hello

Regardons maintenant un exemple avec différentes valeurs de base. La base ici est 16. En récupérant une chaîne dans une base donnée, elle sera imprimée au format décimal.

Exemple

#include <iostream>
using namespace std;
main() {
   //Define two wide character string
   wchar_t string1[] = L"5EHelloWorld";
   wchar_t string2[] = L"125Hello";
   wchar_t* End; //The end pointer
   int base = 16;
   int value;
   value = wcstoll(string1, &End, base);
   wcout << "The string Value = " << string1 << "\n";
   wcout << "Long Long Int value = " << value << "\n";
   wcout << "End String = " << End << "\n"; //remaining string after long long integer
   value = wcstoll(string2, &End, base);
   wcout << "\nThe string Value = " << string2 << "\n";
   wcout << "Long Long Int value = " << value << "\n";
   wcout << "End String = " << End; //remaining string after long long integer
}

Output

The string Value = 5EHelloWorld
Long Long Int value = 94
End String = HelloWorld
The string Value = 125Hello
Long Long Int value = 293
End String = Hello

Ici, la chaîne contient 5E donc sa valeur est décimale 94 et la deuxième chaîne contient 125. C'est 293 en décimal.

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