Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Πώς να μετατρέψετε ένα String σε INT C

Στο " C ", οι σειρές χαρακτήρα αποθηκεύονται ως μια σειρά από κώδικες χαρακτήρων και χειραγωγείται ως χαρακτήρες . Αν στοιχειοσειρές σας αντιπροσωπεύουν ακέραιους αριθμούς , τη μετατροπή τους σε ακέραιους αριθμούς πριν από την εκτέλεση οποιασδήποτε μαθηματικές πράξεις , όπως πρόσθεση και αφαίρεση . Για παράδειγμα , δεν μπορείτε να προσθέσετε τις ακολουθίες χαρακτήρων " 123 " και " 5 " και αναμένουμε " 128 " . Η ακολουθία χαρακτήρων " 123 " είναι μια σειρά τεσσάρων χαρακτήρων θέση που περιέχει τους κωδικούς χαρακτήρων ASCII για '1 ' '2 ' '3 ' και "NULL ". Ευτυχώς , υπάρχει ένα πρότυπο λειτουργίας της βιβλιοθήκης , « atoi ", το οποίο μετατρέπει στοιχειοσειρές σε ακέραιους αριθμούς σε C. Οδηγίες
Η 1

Συμπεριλάβετε τα αρχεία κεφαλίδας για την πρότυπη βιβλιοθήκη εισόδου και εξόδου και την πρότυπη βιβλιοθήκη , καθώς και όπως τα όρια header αρχείο . Θυμηθείτε που περιλαμβάνουν οδηγίες αρχίζει στην πρώτη στήλη στο "Γ. "

# include

# include

# include 2

Ξεκινήστε κύριο πρόγραμμα σας και να δηλώσετε μια μεταβλητή συμβολοσειράς για τον χαρακτήρα σας και ένα για προκύπτει ακέραιος σας . Αν το μηχάνημά σας είναι μια εφαρμογή 32 -bit , το εύρος των ακεραίων από - 2 , 147 , 483 , 648-2 , 147 , 483 και 647 . Έτσι , μια σειρά 11 - θέση είναι αρκετά μεγάλο για να χειριστεί την ακολουθία χαρακτήρων που θέλετε να μετατρέψετε

int main ( ) {


char my_string [ 11] ? .

int αριθμό ?
εικόνων 3

Ζητήστε από το χρήστη για μια ακολουθία χαρακτήρων για τη μετατροπή . Δώστε το έγκυρο εύρος των ακεραίων στο σύστημά σας, έτσι ώστε η τιμή που θα εισαχθεί δεν είναι πολύ μεγάλο ή πολύ μικρό για το σύστημά σας να χειρίζεται . Η INT_MIN και INT_MAX σταθερές από τα όρια header αρχείο καθορίσετε την έγκυρη περιοχή για ακέραιους αριθμούς στο σύστημά σας

printf ( "Παρακαλώ εισάγετε μια αριθμητική σειρά μεταξύ % d και % d \\ n ". , INT_MIN , INT_MAX ) . ?

παίρνει ( my_string ) ?
Η 4

Μετατρέψτε το string με τη λειτουργία atoi και να αποθηκεύσετε το αποτέλεσμα στη μεταβλητή int σας . Η λειτουργία atoi επιστρέφει την τιμή μετατροπής , μηδέν αν δεν υπάρχει καμία μετατροπή , ή η συνεχής INT_MIN ή INT_MAX αν η σειρά των χαρακτήρων ήταν εκτός της εμβέλειας

αριθμό = atoi ( my_string ) ? .
Η 5

Εκτυπώστε την αρχική σειρά και το προκύπτον ακέραιο . Χρησιμοποιήσει έναν κωδικό s % για τη συμβολοσειρά και % d για τον ακέραιο αριθμό . Για να βεβαιωθείτε ότι η συμβολοσειρά μετατρέπεται , να εκτελέσει μια απλή λειτουργία μαθηματικά την τιμή που προκύπτει και να εκτυπώσετε την απάντηση . Τερματίστε το κύριο πρόγραμμα επιστρέφοντας έναν κωδικό επιτυχία και την είσοδο κλείσιμο σας } .

Printf (" Η αρχική σειρά % s είναι ο ακέραιος αριθμός % d . Προσθέτοντας 6 δίνει % d \\ n" ,

my_string , τον αριθμό , τον αριθμό +6 ) ?

επιστροφή 0? }


Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα