C ++ atol () - Τυπική βιβλιοθήκη C ++

Η συνάρτηση atol () στο C ++ ερμηνεύει τα περιεχόμενα μιας συμβολοσειράς και επιστρέφει την αντίστοιχη ακέραια τιμή.

πρωτότυπο atol ()

 long int atol (const char * str);

Ορίζεται στο αρχείο κεφαλίδας.

Η συνάρτηση atol () παίρνει συμβολοσειρά ως παράμετρο, ερμηνεύει το περιεχόμενό της ως ακέραιο αριθμό και επιστρέφει την αντίστοιχη τιμή σε long int.

atol () Παράμετροι

  • str - Μια συμβολοσειρά με αναπαράσταση ενός ακέραιου αριθμού.

atol () Τιμή επιστροφής

Η συνάρτηση atol () επιστρέφει:

  • μια long intτιμή (η οποία μετατρέπεται από τη συμβολοσειρά).
  • 0 εάν δεν μπορούσε να γίνει έγκυρη μετατροπή.

Εάν η τιμή μετατροπής είναι εκτός εύρους, προκαλεί απροσδιόριστη συμπεριφορά.

Παράδειγμα 1: Πώς λειτουργεί η λειτουργία atol ();

 #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; ) 

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:

 Αριθμός σε String = -114 Αριθμός σε Long Int = -114

Μια έγκυρη ακέραια τιμή για τη συνάρτηση atol () αποτελείται από ένα προαιρετικό σύμβολο + ή - ακολουθούμενο από αριθμητικά ψηφία (0-9) . Η συνάρτηση atol () δεν υποστηρίζει δεκαεξαδική, άπειρο και NaNέκφραση όπως η συνάρτηση atof ().

Γενικά, ένα έγκυρο ακέραιο όρισμα για τη συνάρτηση atol () έχει την ακόλουθη μορφή:

 (κενό διάστημα) (- | +) (ψηφία)

Η συνάρτηση atol () αγνοεί όλους τους κύριους χαρακτήρες του διαστήματος έως ότου βρεθεί ο κύριος χαρακτήρας εκτός κενού χώρου.

Στη συνέχεια, ξεκινώντας από αυτόν τον χαρακτήρα, παίρνει όσο το δυνατόν περισσότερους χαρακτήρες που σχηματίζουν μια έγκυρη ακέραια αναπαράσταση και τους μετατρέπει σε μια μεγάλη τιμή int. Ό, τι απομένει από τη συμβολοσειρά μετά τον τελευταίο έγκυρο χαρακτήρα αγνοείται και δεν επηρεάζει το αποτέλεσμα.

Παράδειγμα 2: συνάρτηση atol () με χαρακτήρες κενού και τελικού χαρακτήρα

 #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; )

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:

 Αριθμός σε String = 13 Αριθμός σε Long Int = 13 Αριθμός σε String = 25 Αριθμός σε Long Int = 25 Αριθμός σε String = 41,90abcd Αριθμός σε Long Int = 41 abcd14 έως Long Int = 0

ενδιαφέροντα άρθρα...