C++ Pointer to Structure

C Pointer To Structure



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

Εισαγωγή στις δομές στη C++

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

Εισαγωγή στους δείκτες στη C++

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







Δήλωση ενός δείκτη σε δομή στη C++

Για να μπορέσουμε να χρησιμοποιήσουμε μια δομή και δείκτες, πρέπει πρώτα να τα δηλώσουμε. ο 'κατασκευή' Η λέξη-κλειδί χρησιμοποιείται για τη δήλωση δομής στη C++ και ακολουθείται από το όνομα που προσδιορίζει τη δομή.



Ακολουθεί η σύνταξη του δείκτη στη δομή στη C++.



struct όνομα_δομής * πτρ ;

πτρ = & δομή_μεταβλητή ;

Η σύνταξη δηλώνει μια μεταβλητή δείκτη πτρ τύπου struct όνομα_δομής . ο (*) υποδηλώνει ότι πτρ είναι δείκτης.





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

Πώς να δημιουργήσετε έναν δείκτη σε δομή στη C++

Για να δημιουργήσετε έναν δείκτη στη δομή στη C++ ακολουθούν τα βήματα:



Βήμα 1: Πρώτα δηλώστε μια δομή με τα επιθυμητά μέλη.

struct Υπάλληλος {

όνομα συμβολοσειράς ;

ενθ ηλικία ;

φλοτέρ Μισθός ;

} ;

Βήμα 2: Τώρα θα δηλώσουμε μια μεταβλητή δείκτη που έχει τον ίδιο τύπο με τη δομή. Χρησιμοποιήστε το (*) τελεστή για να υποδείξει ότι πρόκειται για μεταβλητή δείκτη.

Υπάλληλος * EmployeePtr ;

Βήμα 3: Στη συνέχεια χρησιμοποιήστε το διεύθυνση-του χειριστής (&) για να αντιστοιχίσετε τον δείκτη στη διεύθυνση μνήμης μιας μεταβλητής δομής.

Υπάλληλος σελ = { 'Υπάλληλος' , 24 , 10000 } ;

EmployeePtr = & Π ;

Για πρόσβαση στο μέλος της δομής θα χρησιμοποιήσουμε το βέλος χειριστής (->) με μεταβλητή δείκτη.

cout << 'Ονομα: ' << EmployeePtr -> όνομα << endl ;

cout << 'Ηλικία:' << EmployeePtr -> ηλικία << endl ;

cout << 'Μισθός: ' << EmployeePtr -> Μισθός << endl ;

Παρακάτω είναι το πλήρες πρόγραμμα που εξηγεί πώς να δημιουργήσετε έναν δείκτη στη δομή στη C++:

#include

χρησιμοποιώντας το namespace std ;

struct Υπάλληλος {

όνομα συμβολοσειράς ;

ενθ ηλικία ;

φλοτέρ Μισθός ;

} ;

ενθ κύριος ( ) {

Υπάλληλος σελ = { 'Υπάλληλος' , 24 , 10000 } ;

Υπάλληλος * EmployeePtr = & Π ;

cout << 'Ονομα: ' << EmployeePtr -> όνομα << endl ;

cout << 'Ηλικία:' << EmployeePtr -> ηλικία << endl ;

cout << 'Μισθός: ' << EmployeePtr -> Μισθός << endl ;

ΕΠΙΣΤΡΟΦΗ 0 ;

}

Το παραπάνω πρόγραμμα δημιουργεί ένα δομημένο Υπάλληλος με τρία μέλη? όνομα , ηλικία , και Μισθός . Στη συνέχεια δημιουργεί μια μεταβλητή Π τύπου Employee και αρχικοποιεί τα μέλη του.

Στη συνέχεια, δημιουργεί μια μεταβλητή δείκτη EmployeePtr τύπου Employee και του εκχωρεί τη διεύθυνση μνήμης του Π . Στη συνέχεια χρησιμοποιεί τον δείκτη για πρόσβαση στα μέλη του Υπαλλήλου struct και τα εκτυπώνει στην κονσόλα.

συμπέρασμα

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