Namensräume
Varianten
Aktionen

std::strtoimax, std::strtoumax

Aus cppreference.com
< cpp‎ | string‎ | byte

 
 
Strings Bibliothek
Null-terminierte Strings
Original:
Null-terminated strings
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Byte-Strings
Multibyte-Strings
Wide Strings
Classes
Original:
Classes
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
basic_string
char_traits
 
Null-terminierte Byte-Strings
Funktionen
Original:
Functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Character Manipulation
Original:
Character manipulation
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Umwandlungen in numerische Formate
Original:
Conversions to numeric formats
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
String-Manipulation
Original:
String manipulation
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
strcpy
strncpy
strcat
strncat
strxfrm
String Prüfung
Original:
String examination
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Speicher Manipulation
Original:
Memory manipulation
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
memchr
memcmp
memset
memcpy
memmove
Verschiedenes
Original:
Miscellaneous
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
strerror
 
Defined in header <cinttypes>
std::intmax_t strtoimax(const char* nptr, char** endptr, int base);
(seit C++11)
std::uintmax_t strtoumax(const char* nptr, char** endptr, int base);
(seit C++11)
Legt einen Integer-Wert in einem Byte String, auf den nptr .
Original:
Interprets an integer value in a byte string pointed to by nptr.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Function discards any whitespace characters until first non-whitespace character is found. Then it takes as many characters as possible to form a valid base-n (where n=base) integer number representation and converts them to an integer value. The valid integer value consists of the following parts:

  • (optional) plus or minus sign
  • (optional) prefix (0) indicating octal base (applies only when the base is 8)
  • (optional) prefix (0x or 0X) indicating hexadecimal base (applies only when the base is 16)
  • a sequence of digits

The set of valid digits for base-2 integer is 01, for base-3 integer is 012, and so on. For bases larger than 10, valid digits include alphabetic characters, starting from Aa for base-11 integer, to Zz for base-36 integer. The case of the characters is ignored.

Die Funktionen setzt den Zeiger auf die durch endptr auf das Zeichen nach dem letzten Zeichen interpretiert zeigen. Wenn endptr NULL ist, wird es ignoriert .
Original:
The functions sets the pointer pointed to by endptr to point to the character past the last character interpreted. If endptr is NULL, it is ignored.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Wenn die nptr ist leer oder nicht die erwartete Form, wird keine Konvertierung durchgeführt, und (wenn enptr nicht NULL) der Wert nptr im Objekt, auf das endptr gespeichert .
Original:
If the nptr is empty or does not have the expected form, no conversion is performed, and (if enptr is not NULL) the value of nptr is stored in the object pointed to by endptr.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Inhaltsverzeichnis

[Bearbeiten] Parameter

nptr -
Zeiger auf die null-terminierte Byte-String interpretiert werden
Original:
pointer to the null-terminated byte string to be interpreted
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
endptr -
Zeiger auf einen Zeiger auf ein Zeichen .
Original:
pointer to a pointer to character.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
base -
Base der interpretierten Integer-Wert
Original:
base of the interpreted integer value
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten] Rückgabewert

  • Wenn dies gelingt, ist ein ganzzahliger Wert entsprechend dem Inhalt des str zurückgegeben .
    Original:
    If successful, an integer value corresponding to the contents of str is returned.
    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.
  • Wenn der umgewandelte Wert fällt außerhalb der Reichweite des zugehörigen Rückgabetyp, tritt ein Fehler Bereich (Einstellung [[cpp/error/errno|errno]] um ERANGE) und INTMAX_MAX, INTMAX_MIN, UINTMAX_MAX oder 0 zurückgegeben wird, entspricht .
    Original:
    If the converted value falls out of range of corresponding return type, a range error occurs (setting [[cpp/error/errno|errno]] to ERANGE) and INTMAX_MAX, INTMAX_MIN, UINTMAX_MAX or 0 is returned, as appropriate.
    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.
  • Wenn keine Umwandlung durchgeführt werden kann, wird zurückgegeben 0 .
    Original:
    If no conversion can be performed, 0 is returned.
    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

[Bearbeiten] Beispiel

#include <iostream>
#include <string>
#include <cinttypes>
 
int main()
{
    std::string str = "helloworld";
    std::intmax_t val = std::strtoimax(str.c_str(), nullptr, 36);
    std::cout << str << " in base 36 is " << val << " in base 10\n";
 
    char* nptr;
    val = std::strtoimax(str.c_str(), &nptr, 30);
    if(nptr != &str[0] + str.size())
        std::cout << str << " in base 30 is invalid."
                  << " The first invalid digit is " << *nptr << '\n';
}

Output:

helloworld in base 36 is 1767707668033969 in base 10
helloworld in base 30 is invalid. The first invalid digit is w

[Bearbeiten] Siehe auch

(C++11)
(C++11)
wandelt eine breite Zeichenfolge std::intmax_t oder std::uintmax_t
Original:
converts a wide string to std::intmax_t or std::uintmax_t
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(Funktion) [edit]
wandelt ein Byte-String in einen ganzzahligen Wert
Original:
converts a byte string to an integer value
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(Funktion) [edit]
wandelt ein Byte-String in einen vorzeichenlosen Integer-Wert
Original:
converts a byte string to an unsigned integer value
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(Funktion) [edit]
C documentation for strtoimax, strtoumax