ΕΠΛ 034: Εισαγωγή στον Προγραμματισμό για ΗΜΥ Αχιλλέας Αχιλλέως, Τμήμα Πληροφορικής, Πανεπιστήμιο Κύπρου Email: achilleas@cs.ucy.ac.cy
Κεφάλαιο 3 Εισαγωγή στην C
Θέματα ιάλεξης Σύνταξη και Σημασιολογία της C Σχολιασμός Μεταβλητές/Σταθερές Τύποι εδομένων και Τελεστές
Γλώσσα Προγραμματισμού C Είναι μια από τις πιο διαδομένες γλώσσες υψηλού επιπέδου Σχεδιάστηκε το 1972 από τον Dennis M. Ritchie στα εργαστήρια Bell της AT&T (εξέλιξη της γλώσσας Β) Χρησιμοποιήθηκε για την κατασκευή συστημάτων, π.χ. το λειτουργικό σύστημα UNIX Συνεχής εξέλιξη της γλώσσας μέχρι σήμερα
Γενικές Παρατηρήσεις για C Kατανοητή Αποτελείται από εντολές και δηλώσεις μεταβλητών Όλες οι εντολές και δηλώσεις τελειώνουν με ; Χρήση συναρτήσεων stdio (printf, scanf) printf εκτυπώνει \n κινεί τον δρομέα (cursor) στην επόμενη γραμμή scanf διαβάζει από τον χρήστη
ομή προγράμματος C Σχόλια παντού Οδηγίες στον προεπεξεργαστή Ορισμός συνάρτησης main δηλώσεις μεταβλητών εντολές η ς μ β η ς (εκφράσεις, κλήσεις συναρτήσεων κτλ)
Σχόλια Σύνταξη: ξεκινούν με /* και τελειώνουν με */ Καμία σημασία (ο μεταγλωττιστής αγνοεί τα σχόλια) ) αλλά πολύ σημαντικό μέρος ενός προγράμματος (τεκμηρίωση/επεξήγηση) /* auto einai ena syntaktika ortho sxolio*/ /* kai auto * einai * syntaktika * ortho */
Σχόλια (συν.) /* auto * ti* einai */ /***********auto??? ***************/ /* lathos sxolio */ giati */ */ einai lathos??? /*
Ενσωμάτωση βιβλιοθηκών #include Οδηγία στον προεπεξεργαστή για ενσωμάτωση ββλ βιβλιοθηκών. Μια βιβλιοθήκη (library ή header file) είναι μια συλλογή χρήσιμων συναρτήσεων και σταθερών. Σύνταξη: #include <header file> π.χ. #include <stdio.h>
Ενσωμάτωση βιβλιοθηκών (συν.) Ενσωμάτωση επιτρέπει την χρήση συναρτήσεων και σταθερών μιας βιβλιοθήκης. π.χ. η βιβλιοθήκη stdio περιέχει, ανάμεσα σε άλλα, τις συναρτήσεις: printf, για εκτύπωση πληροφοριών, και scanf, για εισδοχή πληροφοριών Άλλες διαταγές στον προεξεργαστή: #define, #ifdef, #if, #else, #endif, #undef
Ονόματα στην C Για σταθερές, μεταβλητές, συναρτήσεις. Η C είναι CASE SENSITIVE, κεφαλαία και μικρά γράμματα είναι διαφορετικά. foo και FOO είναι δυο διαφορετικά ονόματα. Να χρησιμοποιείτε αυτοεπεξηγηματικά ονόματα. εν πρέπει να χρησιμοποιούμε σαν ονόματα τις δεσμευμένες λέξεις.
εσμευμένες Λέξεις (Reserved Words) Λέξεις με ειδική σημασία για την C. εν πρέπει να ορίζονται ξανά σαν ονόματα. auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while
Σύνταξη Ονόματος L: letters a-z A-Z π.χ. metavliti N: numbers 0-9 rectangle_area _ : underscore _index_123 1variable %super^ se tria meroi
Σημασία Μεταβλητής (variable) Αποθήκευση και ανάγνωση τιμών βασικοί: int, char, float, double μέγεθος: 4Β, 1Β, 4Β, 8Β (κάθε κυψελίδα 1 Byte) (συμβολικό) όνομα το όνομα αντιστοιχεί σε συγκεκριμένη διεύθυνση στην μνήμη. τιμή Εξαρτάται από το λειτουργικό σύστημα
Σημασία Μεταβλητής (συν.) int count; τύπος Όνομα (διεύθυνση) τιμή count = 137; count = count + 142; foo(&count); ιεύθυνση του count 0 98760060 279137... Τύπος διεύθυνσης ονομάζεται δείκτης (pointer) π.χ. int *deikths;...
ήλωση Μεταβλητής char $foo; char f; int count, sum; float area, double volume; int index; cost; double charge; float angle, income;
Σημαντική Σημείωση Μια μεταβλητή πρέπει να δηλωθεί πριν χρησιμοποιηθεί. Εάν η μεταβλητή βρίσκεται στα αριστερά του τελεστή ανάθεσης ( = ) η τιμή του αποτελέσματος της έκφρασης (expression) στα δεξιά του τελεστή ανάθεσης αποθηκεύεται στην διεύθυνση της μεταβλητής. Αλλιώς χρησιμοποιείται η τιμή της μεταβλητής. euro = lires * rate;
Σημασία Σταθεράς (constant) Σταθερές ρςέχουν: τιμή. όνομα όχι όμως διεύθυνση. προ-επεξεργαστής αντικαθιστά το όνομα με την τιμή. ιευκολύνει: τροποποιήσεις διάβασμα ενός προγράμματος (PI ή 3.1453) Μια σταθερά πρέπει να δηλωθεί πριν χρησιμοποιηθεί. εν μπορεί να αλλάξει τιμή κατά την εκτέλεση του προγράμματος.
Πρόγραμμα - Παράδειγμα /* programma poy metatrepei lires se euro */ #include <stdio.h> int main(){ float lires, rate; /* inputs*/ float euro; /* output*/ /* eisagwgh dedomenwn */ printf( Enter lires kai rate: ); scanf( %f%f,&lires, &rate); /* Ypologismos-metatropi*/ euro = lires * rate; /*exagwgh dedomenwn*/ printf( %.2f lires antistoixoun se %.2f euro\n, lires, euro); return 0; }
Περίληψη Εισαγωγή στη C Σύνταξη της C Σημασιολογία της C Σχολιασμός Γνωριμία με τους ποιο γνωστούς/χρήσιμους Τύπους εδομένων και Τελεστές ήλωση και Χρησιμότητα Μεταβλητών ήλωση και Χρησιμότητα Σταθερών
Τέλος Κεφαλαίου 3