Οι δείκτες

Ένας δείκτης είναι ουσιαστικά μία μεταβλητή που περιέχει την διεύθυνση κάποιας άλλης μεταβλητής. Κάθε δήλωση ενός δείκτη εκτός από το όνομα της μεταβλητής και το τύπο των δεδομένων στα οποία αναφέρεται ο δείκτης, πρέπει να έχει και την ένδειξη ότι η συγκεκριμένη μεταβλητή θα χρησιμοποιηθεί σαν δείκτης. Αυτό γίνεται με τον χαρακτήρα * (αστερίσκος):

 

main() 

int x,i, *pi, *px; 
char y; 

i = 15; 
pi = &i; 
x = *pi; 
printf("%d %d \n",i,*pi); 
printf("%d %d \n",x,&i); 
printf("%d %d \n", pi,px); 

Παρατηρήστε τα πιο κάτω προγράμματα, που εκτυπώνουν ένα μήνυμα. Στο πρώτο πρόγραμμα η συμβολοσειρά δηλώνεται με την βοήθεια δείκτου, ενώ στο δευτερο σαν πίνακας:

Με χρήση δείκτη Με χρήση πίνακα

#include <stdio.h>
main()
{
     char *msg1;

    msg1 = "Hello Word";
    printf ("%s\n",msg1);
}

#include <stdio.h>
main()
{
     char msg1 [20];

    strcpy (msg1,  "Hello Word");
    printf ("%s\n",msg1);
}

Οι εντολές εκχώρησης (= και strcpy) είναι διαφορετικές σε κάθε περίπτωση. Γιατί;

Στην προηγούμενη ενότητα

Στην αρχική σελίδα

Στην επόμενη ενότητα