Skip to main content

Τι είναι ένας μηδενικός χαρακτήρας;

Ένας μηδενικός χαρακτήρας στον προγραμματισμό υπολογιστών είναι ένας χαρακτήρας με την τιμή μηδέν.Είναι διαφορετικό από το Numeral Zero, το οποίο αποτελεί μέρος του τυποποιημένου τυπωμένου σετ χαρακτήρων.Το Null είναι στην πραγματικότητα ένας χαρακτήρας ελέγχου με το δείκτη μηδέν.Χρησιμοποιείται για να υποδείξει ότι μια μεταβλητή, τάξη ή δείκτης είναι άδειος, απροσδιόριστος ή μη αρχικοποιημένος.Ένα μηδενικό χρησιμοποιείται επίσης στη γλώσσα προγραμματισμού C για να σηματοδοτήσει το τέλος μιας σειράς χαρακτήρων.

Ο μηδενικός χαρακτήρας ήταν αρχικά ένας από μια σειρά ειδικών χαρακτήρων ελέγχου που χρησιμοποιούνται για την επικοινωνία με περιφερειακό υλικό όπως εκτυπωτές ή μονάδες ταινίας.Η αρχική έννοια του Null ήταν να καθοδηγήσει μια συσκευή να μην κάνει τίποτα.Καθώς η τεχνολογία έγινε πιο εξελιγμένη, οι χαρακτήρες ελέγχου χρειάστηκαν λιγότερο για τη διασύνδεση με εξωτερικές συσκευές.Το NULL παρέμεινε στα περισσότερα σύνολα χαρακτήρων, ωστόσο, στη θέση Zero

Πολλές γλώσσες προγραμματισμού χρησιμοποιούν τον μηδενικό χαρακτήρα για να υποδείξουν ότι μια τιμή δεν έχει εκχωρηθεί σε μεταβλητή, δείκτη ή τάξη.Η τιμή του NULL ορίζεται συχνά στις βασικές βιβλιοθήκες της γλώσσας προγραμματισμού ως τιμή /0, η οποία μεταφράζεται σε ένα μόνο κενό χαρακτήρα.Μια μεταβλητή με την τιμή null δεν έχει την τιμή μηδέν.Το μηδέν είναι ένας εντελώς διαφορετικός κώδικας χαρακτήρων, οπότε οι δοκιμές ισοδυναμίας μεταξύ μηδέν και μηδενικού θα δείξουν αποτέλεσμα ψευδούς.Αυτό είναι από το σχεδιασμό, επειδή το μηδέν μπορεί να είναι μια έγκυρη τιμή για μια μεταβλητή.

Η γλώσσα προγραμματισμού γνωστή ως C χρησιμοποιεί το μηδενικό χαρακτήρα σε μεγάλη επίδραση για να εξοικονομήσει χώρο μνήμης.Ο μηδενικός χαρακτήρας χρησιμοποιείται ως το τέλος μιας σειράς χαρακτήρων, που ονομάζεται επίσης μηδενική τερματισμένη συμβολοσειρά.Αυτό επιτρέπει στο πρόγραμμα να αποθηκεύει μια συμβολοσειρά με την ανάγκη μόνο για ένα επιπλέον byte για να κρατήσει το Null Terminator.Ο μηδενικός χαρακτήρας δεν μπορούσε να εμφανιστεί και δεν χρησιμοποιήθηκε για κανένα άλλο σκοπό, οπότε αυτό το σύστημα λειτούργησε καλά.

Γλώσσες που ήρθαν μετά το C άρχισε να χρησιμοποιεί το Null για να αρχικοποιήσει νέες μεταβλητές και τάξεις.Οι περισσότερες προδιαγραφές γλώσσας εγγυώνται πραγματικά ότι οι πρόσφατα δηλωμένες μεταβλητές θα ισοδυναμούν με μηδενικές.Παρομοίως, οι μεταβλητές μπορούν να εκχωρηθούν η τιμή null για να υποδείξουν ότι δεν έχουν αξία ή ότι δεν δείχνουν σε καμία θέση μνήμης

Ορισμένες αντικειμενικές γλώσσες μπορούν να χρησιμοποιήσουν τον μηδενικό χαρακτήρα κατά τη διάρκεια της διαδικασίας συλλογής σκουπιδιών.Εάν μια μεταβλητή που κατέχει μια παρουσία μιας κλάσης έχει οριστεί σε μηδενική, τα δεδομένα καθίστανται απρόσιτα, εκτός εάν αναφέρονται διαφορετικά από μια άλλη μεταβλητή.Ο μηχανισμός συλλογής σκουπιδιών, ο οποίος ελευθερώνει τη μνήμη που χρησιμοποιήθηκε προηγουμένως, ανιχνεύει τα δεδομένα που δεν μπορούν να μην παρατηρεί και το επιστρέφει στην διαθέσιμη ομάδα μνήμης.Η ρητή ανάθεση μιας μεταβλητής σε NULL θεωρείται μερικές φορές ένα κακό στυλ προγραμματισμού.