>> Γλώσσα προγραμματισμού C (click για είσοδο)

Επιμέλεια κειμένου, παρουσίασης : Πεφάνης Ευάγγελος - μέλος Ε.Τ.Ε.Π

Η γλώσσα C (προφέρεται "σι") είναι μια διαδικαστική γλώσσα προγραμματισμού γενικής χρήσης, η οποία αναπτύχθηκε αρχικά, μεταξύ του 1969 και του 1973, από τον Ντένις Ρίτσι στα εργαστήρια AT&T Bell Labs για να χρησιμοποιηθεί για την ανάπτυξη του λειτουργικού συστήματος UNIX.

Η συνέχεια εντός της ενότητας...

Όπως οι περισσότερες διαδικαστικές γλώσσες προγραμματισμού που ακολουθούν την παράδοση της ALGOL, η C έχει δυνατότητες δομημένου προγραμματισμού και επιτρέπει τη χρήση αναδρομής (αλλά όχι και εμφωλευμένων συναρτήσεων), ενώ, ο στατικός ορισμός του τύπου των μεταβλητών που επιβάλλει, προλαμβάνει πολλά σφάλματα κατά την χρήση τους. Ο σχεδιασμός της περιλαμβάνει δομές που μεταφράζονται αποδοτικά σε τυπικές εντολές μηχανής (machine instructions) και εξ αιτίας αυτού χρησιμοποιείται συχνά σε εφαρμογές που παλιότερα γράφονταν σε συμβολική γλώσσα (assembly language). Αυτό ακριβώς το χαρακτηριστικό της, που έχει σαν συνέπεια και την αυξημένη ταχύτητα εκτέλεσης των εφαρμογών που γράφονται σε αυτή, καθώς και το γεγονός ότι είναι διαθέσιμη στα περισσότερα σημερινά λειτουργικά συστήματα, συνέβαλε κατά πολύ στην καθιέρωση της και την χρήση της για ανάπτυξη λειτουργικών συστημάτων και λοιπών προγραμμάτων συστήματος (system software), αλλά και απλών εφαρμογών.

Η C συγκαταλέγεται πλέον στις πιο ευρέως χρησιμοποιούμενες γλώσσες προγραμματισμού όλων των εποχών και πολλές νεώτερες γλώσσες έχουν επηρεαστεί άμεσα ή έμμεσα από αυτήν, συμπεριλαμβανομένων των C++, C#, D, Go, JavaJavaScript, Limbo, LPC, PerlPHPPython, καθώς και του κελύφους C (C shell) του Unix. Κάποιες από αυτές τις γλώσσες έχουν επηρεαστεί κυρίως στη σύνταξη τους, με το σύστημα τύπων, τα μοντέλα δεδομένων και το νόημα των εκφράσεων τους να διαφέρουν σημαντικά από την C. Η C++, ειδικά, ξεκίνησε σαν προεπεξεργαστής της C, αλλά έχει εξελιχθεί πλέον σε μια αντικειμενοστραφή γλώσσα, που αποτελεί υπερσύνολο της C.

ΒΑΣΙΚΑ ΚΕΦΑΛΑΙΑ - ΕΝΟΤΗΤΕΣ ΕΚΜΑΘΗΣΗΣ ΤΗΣ ΓΛΩΣΣΑΣ C

Μάθημα 1ο - 2ο : Εισαγωγή.

Παρουσίαση, χρήση του I.D.E Dev C++. Ένα απλό πρόγραμμα σε C. #include, #define. Απλές πράξεις και scanf, printf. Εντολές (κωδικοί) μορφοποίησης. Αριθμητικοί, συγκριτικοί και λογικοί τελεστές. type cast.

Μάθημα 3ο - 4ο : Εντολές ελέγχου ροής.

if, switch. Εντολές επανάληψης for, while και do-while. Οι εντολές break και continue σε βρόχο επανάληψης. Εμφωλευμένες εντολές.

Μάθημα 5ο - 6ο : Πίνακες αριθμών και χαρακτήρων.

Πίνακες αριθμών μιας και περισσότερων διαστάσεων. Χειρισμός με εντολές επανάληψης (for). Υπερχείλιση. Πίνακες χαρακτήρων - strings. Οι συναρτήσεις χειρισμού τους strcpy, strcat, strcmp, strlen. Το αρχείο string.h. Το NULL.

Μάθημα 7ο - 8ο : Συναρτήσεις - Δείκτες (pointers).

Βιβλιοθήκες έτοιμων συναρτήσεων. Δήλωση και ορισμός συνάρτησης. Το πρωτότυπο της συνάρτησης. Επιστρεφόμενος τύπος, ο τύπος void. Η εντολή return. Ορίσματα και παράμετροι. Κλήση συνάρτησης by value και by reference. Δήλωση δείκτη. Ο τελεστής & και *.

Μάθημα 9ο - 10ο : Swap - Δείχτες - Δυναμική διαχείριση μνήμης

Swap - εναλλαγή στοιχείων πίνακα , Δυναμική δέσμευση και αποδέσμευση μνήμης - πλεονεκτήματα, με τις συναρτήσεις malloc και free. Ο τελεστής sizeof.

Μάθημα 11ο - 12ο: Δομές (structures) - Δυναμική διαχείριση μνήμης

Ορισμός δομής και δήλωση μεταβλητής τύπου δομής. Πλεονεκτήματα για τον προγραμματιστή. Δομές σαν παράμετροι συναρτήσεων. Πίνακες δομών και δείκτες. Χρησιμοποίηση δομών σε δομές δεδομένων.

Χρήσιμες σημειώσεις -  Δωρεάν eBooks

Διαδικαστικός Προγραμματισμός - Η γλώσσα C (Αποθετήριο Κάλλιπος www.kallipos.gr)
"The C Programming Language" - free ebook από τους δημιουργούς της C

Επιπλέον υλικό - συνδέσεις (Links)

Εγχειρίδιο της C για αρχάριους (Αγγλικά)
Εγχειρίδιο της C από τον Brian Kernighan (σε pdf) (Αγγλικά)
Learn C language in Hindi through FREE videos
Visual Studio Technologies Develop C and C++ applications