Δομές στην γλώσσα προγραμματισμού C

Δομές στην γλώσσα προγραμματισμού C

Στη γλώσσα προγραμματισμού C μπορούμε, εκτός από τους τύπους που ήδη υπάρχουν, int, float, double, char, να επινοήσουμε και χρησιμοποιήσουμε καινούριους, δικούς μας τύπους δεδομένων με συνδυασμό των ήδη υπαρχόντων. Αυτούς τους λέμε παράγωγους τύπους (derived types) και τους ορίζουμε με τη βοήθεια των λεγόμενων δομών δεδομένων (data structures). Οι δομές στην γλώσσα προγραμματισμού C είναι κάτι ανάλογο με τα records (εγγραφές) της Pascal.

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

#include <stdio.h>
#include <string.h>
struct Books { 
   char title[50];       /* τίτλος βιβλίου - string 50 χαρακτήρων */
   char author[50];      /* συγγραφέας βιβλίου - string 50 χαρακτήρων */
   char subject[100];    /* αντικείμενο βιβλίου - string 100 χαρακτήρων */
   int book_id;          /* κωδικός βιβλίου - integer */
}; 

Στην συνέχεια στο κυρίως πρόγραμμα δημιουργούμε μεταβλητές του τύπου (δομής) Books:

int main( ) { 
   struct Books Book1; /* μεταβλητή Book1 του τύπου Book */ 
   struct Books Book2; /* μεταβλητή Book2 του τύπου Book */ 

   /* Book1 καταχωρήσεις τιμών */
   strcpy( Book1.title, "C Programming"); 
   strcpy( Book1.author, "Nuha Ali"); 
   strcpy( Book1.subject, "C Programming Tutorial"); 
   Book1.book_id = 6495407; 

   /* Book2 καταχωρήσεις τιμών */
   strcpy( Book2.title, "Telecom Billing"); 
   strcpy( Book2.author, "Zara Ali"); 
   strcpy( Book2.subject, "Telecom Billing Tutorial");
   Book2.book_id = 6495700; 

   /* εκτύπωση των πληροφοριών του Book1 */ 
   printf( "Book 1 title : %s\n", Book1.title); 
   printf( "Book 1 author : %s\n", Book1.author); 
   printf( "Book 1 subject : %s\n", Book1.subject); 
   printf( "Book 1 book_id : %d\n", Book1.book_id); 

   /* εκτύπωση των πληροφοριών του Book2 */ 
   printf( "Book 2 title : %s\n", Book2.title); 
   printf( "Book 2 author : %s\n", Book2.author); 
   printf( "Book 2 subject : %s\n", Book2.subject); 
   printf( "Book 2 book_id : %d\n", Book2.book_id); 
   
   return 0; 
}

Τα μέλη της δομής στην γλώσσα προγραμματισμού C περικλείονται από τις αγκύλες { και } και κάθε μέλος περιγράφεται από τη δική του δήλωση. Τα μέλη μπορεί να είναι οποιουδήποτε τύπου δεδομένων, ακόμα και άλλες δομές. Υπάρχουν δομές τοπικές και καθολικές.

Πρόσβαση στα Πεδία μιας Δομής στην γλώσσα προγραμματισμού C

Μπορούμε να έχουμε πρόσβαση στα μέλη μιας δομής με τη χρήση του τελεστή μέλους δομής (.). Δηλαδή, το book.title είναι το τμήμα title της δομής book. Στην ουσία, οι εκφράσεις .title, .author, subject και .book_id παίζουν τον ρόλο των δεικτών αρίθμησης της δομής book. Η book.book_id είναι μια τιμή τύπου integer και και μπορεί να χρησιμοποιηθεί όπως κάθε άλλος τύπος int.

3 thoughts on “Δομές στην γλώσσα προγραμματισμού C

Απάντηση

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει τα ανεπιθύμητα σχόλια. Μάθετε πώς υφίστανται επεξεργασία τα δεδομένα των σχολίων σας.