C ++ atol () - Perpustakaan Standard C ++

Fungsi atol () dalam C ++ menafsirkan isi rentetan dan mengembalikan nilai integernya yang sepadan.

atol () Prototaip

 intol panjang (const char * str);

Ia ditakrifkan dalam fail tajuk.

Fungsi atol () mengambil rentetan sebagai parameter, menafsirkan kandungannya sebagai nombor tidak terpisahkan dan mengembalikan nilai yang sesuai dalam long int.

atol () Parameter

  • str - Rentetan yang mempunyai perwakilan nombor integral.

atol () Nilai pulangan

Fungsi atol () mengembalikan:

  • yang long intnilai (yang ditukar daripada rentetan).
  • 0 jika tiada penukaran yang sah dapat dilakukan.

Sekiranya nilai yang ditukar berada di luar julat, ia menyebabkan tingkah laku yang tidak ditentukan.

Contoh 1: Bagaimana fungsi atol () berfungsi?

 #include #include using namespace std; int main() ( char s() = "-114"; double number; cout << "Number in String = " << s << endl; number = atol(s); cout << "Number in Long Int = " << number; return 0; ) 

Semasa anda menjalankan program, outputnya adalah:

 Nombor dalam Rentetan = -114 Nombor dalam Panjang Int = -114

Nilai bilangan bulat yang sah untuk fungsi atol () terdiri daripada tanda + atau - pilihan diikuti dengan angka berangka (0-9) . Fungsi atol () tidak menyokong heksadesimal, tak terhingga dan NaNekspresi seperti fungsi atof ().

Secara umum, argumen integer yang sah untuk fungsi atol () mempunyai bentuk berikut:

 (ruang kosong) (- | +) (digit)

Fungsi atol () mengabaikan semua watak ruang kosong sehingga watak bukan ruang kosong utama dijumpai.

Kemudian, bermula dari watak ini, diperlukan sebanyak mungkin watak yang membentuk perwakilan bilangan bulat yang sah dan mengubahnya menjadi nilai int yang panjang. Apa sahaja yang tersisa dari rentetan setelah watak yang terakhir terakhir diabaikan dan tidak memberi kesan pada hasilnya.

Contoh 2: fungsi atol () dengan ruang kosong dan watak belakang

 #include #include using namespace std; int main() ( cout << "Number in String = " << " 13" << endl; cout << "Number in Long Int = " << atol(" 13") << endl << endl; cout << "Number in String = " << " 25 " << endl; cout << "Number in Long Int = " << atol(" 25 ") << endl << endl; cout << "Number in String = " << "41.90abcd" << endl; cout << "Number in Long Int = " << atol("41.90abcd") << endl << endl; // Returns 0 because of invalid conversion cout << "abcd14" << " to Long Int = " << atol("abcd14") << endl; return 0; )

Semasa anda menjalankan program, outputnya adalah:

 Nombor dalam String = 13 Nombor di Long Int = 13 Nombor di String = 25 Nombor di Long Int = 25 Nombor di String = 41.90abcd Nombor di Long Int = 41 abcd14 hingga Long Int = 0

Artikel menarik...