O de pé é um Biblioteca padrão C++ função que converte uma string em um inteiro. Ele significa 'string para número inteiro' . Recebe uma string como entrada e retorna o valor inteiro correspondente. A função pode gerar uma exceção do tipo std::argumento_inválido se a string de entrada não representar um número inteiro válido.
Exemplos de uso de stoi em C++:
#include #include int main() { std::string str1 = '123'; int num1 = std::stoi(str1); std::cout<< num1 << std::endl; // Output: 123 std::string str2 = '-456'; int num2 = std::stoi(str2); std::cout<< num2 << std::endl; // Output: -456 std::string str3 = '7.89'; try { int num3 = std::stoi(str3); } catch (std::invalid_argument&e) { std::cout<< 'Invalid argument: ' << str3 << std::endl; } return 0; }
Saída
binário para bcd
123 -456
No primeiro exemplo, a string '123' é convertido para o número inteiro 123 . No segundo exemplo, a string '-456' é convertido para o número inteiro -456 . No terceiro exemplo, a string '7.89' não é um número inteiro válido, então um std::argumento_inválido exceção é lançada.
média versus média
Outro exemplo de trecho de código:
#include #include int main() { std::string str1 = '100'; int num1 = std::stoi(str1); std::cout<< num1 << std::endl; // Output: 100 std::string str2 = '200'; int num2 = std::stoi(str2, 0, 16); std::cout<< num2 << std::endl; // Output: 512 std::string str3 = '300'; int num3 = std::stoi(str3, nullptr, 8); std::cout<< num3 << std::endl; // Output: 192 std::string str4 = 'abc'; try { int num4 = std::stoi(str4); } catch (std::invalid_argument&e) { std::cout<< 'Invalid argument: ' << str4 << std::endl; } return 0; }
Saída
100 512 192 Invalid argument: abc
O primeiro exemplo converte a string '100' para o inteiro decimal 100 . No segundo exemplo, a string '200' é convertido para o número inteiro hexadecimal 512 passando 0 como segundo argumento e 16 como terceiro argumento de pé .
classificação de mesclagem
No terceiro exemplo, a string '300' é convertido para o inteiro octal 192 passando nullptr como segundo argumento e 8 como o terceiro argumento para stoi.
No quarto exemplo, a string 'abc' não é um número inteiro válido, então um std::argumento_inválido exceção é lançada.