Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar rentetan kepada int dalam c++

Bagaimana untuk menukar rentetan kepada int dalam c++

下次还敢
下次还敢asal
2024-05-01 13:27:16945semak imbas

Dalam C++, terdapat dua cara untuk menukar rentetan kepada int: gunakan fungsi sto i(), yang menerima terus rentetan dan mengembalikan integer. Gunakan kelas isringstream untuk menghuraikan rentetan ke dalam aliran input dan mengekstrak integer. Kaedah yang dipilih bergantung pada format rentetan: stoi() adalah lebih ringkas jika formatnya tidak jelas dan tidak mempunyai aksara bukan angka adalah lebih fleksibel jika rentetan mungkin mengandungi aksara bukan angka atau memerlukan penukaran tersuai.

Bagaimana untuk menukar rentetan kepada int dalam c++

Kaedah menukar rentetan kepada int dalam C++

Dalam C++, terdapat dua kaedah berikut untuk menukar rentetan (rentetan) kepada integer (int):

1 Menggunakan fungsi stoi() terbina dalam ialah kaedah yang paling mudah dan langsung. Ia memerlukan parameter rentetan dan mengembalikan integer.

<code class="cpp">#include <iostream>
#include <string>

int main() {
  std::string str = "123";
  int number = stoi(str);
  std::cout << "String: " << str << "\n";
  std::cout << "Integer: " << number << "\n";
  return 0;
}</code>

stoi() 函数是最简单直接的方法。它接收一个字符串参数并返回一个整数。

<code class="cpp">#include <iostream>
#include <sstream>

int main() {
  std::string str = "456";
  std::istringstream iss(str);
  int number;
  iss >> number;
  std::cout << "String: " << str << "\n";
  std::cout << "Integer: " << number << "\n";
  return 0;
}</code>

2. istringstream

另一种方法是使用 istringstream 类。它将字符串解析为输入流,然后可以使用 运算符提取整数。rrreee

选择哪种方法?

  • 如果字符串格式明确,并且不包含任何非数字字符,则 stoi() 函数是更简单、更快的选择。
  • 如果字符串可能包含非数字字符或需要自定义转换行为,则 istringstream2. isringstream
🎜Cara lain ialah menggunakan kelas istringstream. Ia menghuraikan rentetan ke dalam aliran input, yang daripadanya integer boleh diekstrak menggunakan operator . 🎜rrreee🎜🎜Kaedah yang mana satu untuk dipilih? 🎜🎜
  • Jika rentetan itu terbentuk dengan baik dan tidak mengandungi sebarang aksara bukan angka, fungsi stoi() ialah pilihan yang lebih ringkas dan pantas. 🎜
  • istringstream adalah lebih fleksibel jika rentetan mungkin mengandungi aksara bukan angka atau jika tingkah laku penukaran tersuai diperlukan. 🎜🎜

Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan kepada int dalam c++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn