Σκέφτηκα να ανοίξω αυτό το νήμα, για να δω αν υπάρχει σχετικό ενδιαφέρον για συζήτηση και ανταλλαγή απόψεων. Κατά τη ταπεινή μου γνώμη (και όποιος διαφωνεί την έβαψε ) το ενδιαφέρον αρχικά θα ήταν να συζητήσουμε πώς ξεκινάει κάποιος τον προγραμματισμό σε C και C++ που κατά τη ταπεινή μου γνώμη είναι η καλυτερότερη supa-dupa γλώσσα προγραμματισμού (και όποιος διαφωνεί είναι εγκάθετος της M$ και δεν ξέρει τι λέει )
Οπότε, για να σας ρίξω τα 5 σέντσια μου, η συζήτηση αρχίζει με το πώς γράφει κάποιος ένα πρόγραμμα κονσόλας, πώς το κάνει compile (συμπίληση;;;! άρε RΑΜ!), link (πιπίληση - καλά πλάκα κάνω) και μετά ξεψείριασμα (debugging).
Τα πράγματα είναι απλά:
gedit hello.c
βάλτε:
#include <iostream.h>
int main()
{
cout << "this is my first GNU C++ program!" << endl;
return 0;
}
g++ -g -o hello hello.c
δοκιμάστε τώρα να του βάλετε λάθη, ώστε να έχετε κάτι να παίξετε με τον debugger, και δώστε:
gdb hello
Περισσότερες πληροφορίες
man g++
man gcc
man gdb
Ας μας πει τώρα κάποιος, πώς θα βάλουμε αυτό το πρόγραμμα σαν CGI σε μία σελίδα Web ή πώς θα το πετάξουμε σε μία TCP/IP πόρτα, οπότε και θα δούμε το αποτέλεσμά του μέσω του internet και όχι μέσω της κονσόλας.
Εμφάνιση 1-15 από 38
-
17-05-05, 18:24 Τo GNU περιβάλλον προγραμματισμού σε C και C++ στο Linux #1
- Εγγραφή
- 19-04-2004
- Μηνύματα
- 6.372
- Downloads
- 2
- Uploads
- 0
- Άρθρα
- 5
... when you damp oscillations, you lose the high points as well as the low.
改善 - kai zen - continuous change for the better - the Tao of Linux.
Linux χωρίς εγκατάσταση, δωρεάν ΝΟΜΙΜΟ office, browser χωρίς ιούς ,
δωρεάν εγκατάσταση Linux, δωρεάν raytracer, γιατί το δωρεάν είναι όλα τα λεφτά...
ΟΔΗΓΙΕΣ εγκατάστασης Linux
-
17-05-05, 19:19 #2Αρχικό μήνυμα από pelasgian
Eγραψες ένα ωραίο tutorial: το πρόγραμμα μιας γραμμής C++.
Kαι μετά ζητάς καποιος άλλος να γράψει το webportal μιας γραμμής!!!
Αν θέλεις να ασχοληθείς με αναπτυξη ιστοσελίδων ας αλλάξεις και γλώσσα προγραμματισμού τώρα που είναι νωρίς. PHP, CGI, java ,python.
Αν πάλι επιμείνεις στην C++ http://www.cs.unt.edu/~irby/wbcRoden/wbcForms.html.
Bάλε το προγραμμα σου και πάτα compile/run.
Φιλικά,
Βύρων.Τελευταία επεξεργασία από το μέλος viron : 17-05-05 στις 19:28.
-
Viron, μην μπερδεύεσαι. Έναυσμα δίνω να αρχίσει συζήτηση ώστε να μπει κόσμος στη διαδικασία και να βοηθήσουμε κάνα νέο να αρχίσει. Δεν έκανα εγώ ερώτηση να μου πείτε, επειδή δεν ξέρω. Αν μη τι άλλο τόσο ξέρω. Παρεπιπτόντως, το CGI σύνδεσης ΑΥΤΟΥ του προγράμματος με τον apache, είναι όντως μία γραμμή. Καλό το php, αλλά δεν είναι για όλα, και το java είναι για το client end. To python εμένα δεν μου αρέσει, προτιμώ τo bash.
... when you damp oscillations, you lose the high points as well as the low.
改善 - kai zen - continuous change for the better - the Tao of Linux.
Linux χωρίς εγκατάσταση, δωρεάν ΝΟΜΙΜΟ office, browser χωρίς ιούς ,
δωρεάν εγκατάσταση Linux, δωρεάν raytracer, γιατί το δωρεάν είναι όλα τα λεφτά...
ΟΔΗΓΙΕΣ εγκατάστασης Linux
-
17-05-05, 22:58 #4
Νομίζω για να γίνει "cgi" θέλει ένα cout στην αρχή να εκτυπώνει κάτι σαν
<html><body> κι ένα στο τέλος να εκτυπώνει </body></html>
Καλό το bash αλλά αν έχεις να διαλέξεις για cgi ανάμεσα σε bash και C, διάλεξε C.
-
17-05-05, 23:55 #5
- Εγγραφή
- 27-08-2004
- Περιοχή
- internet
- Μηνύματα
- 23.371
- Downloads
- 58
- Uploads
- 17
- Άρθρα
- 9
- Ταχύτητα
- 49999 / 4999
- ISP
- ΟΤΕ Conn-x
- DSLAM
- ΟΤΕ - ΚΟΥΝΟΥΠΙΔΙΑΝΩΝ
Νομίζω ότι η ιδέα του pelasgian είναι πολύ ωραία.
Εγώ θα προτείνω υλικό για διάβασμα.
Προτείνω λοιπόν το Thinking in C++ του Bruce Eckel.
Το βιβλίο αυτό είναι το αγαπημένο μου και ομολογουμένως ένα από τα καλύτερα βιβλία του χώρου.
Επιπλέον εναρμονίζεται πλήρως με τη φιλοσοφία του GNU αφού ο Eckel το προσφέρει δωρεάν σε pdf από τον δικτυακό τόπο του: http://www.mindview.net/
Όποιος θέλει hardcopy μπορεί να το αγοράσει ή να το εκτυπώσει (αν και ίσως είναι πιο φτηνό να το αγοράσει).
Χωρίζεται σε δύο βιβλία εκ των οποίων το σημαντικό είναι το πρώτο στο οποίο μαθαίνεται γενικότερα η C++ ενώ στο δεύτερο αναλύονται κάποιες από τις πιο δημοφιλείς βιβλιοθήκες.
Δεν διδάσκει απλά C++ αλλά και σωστό αντικειμενοστραφή προγραμματισμό αφού πολλοί είναι αυτοί που μπορούν να γράψουν κώδικα (σε οποιαδήποτε γλώσσα) αλλά λίγοι αυτοί που μπορούν να γράψουν μεγάλου μέγεθους, αποτελεσματικό, γρήγορο, συντηρήσιμο και bug free κώδικα.
Όπως είπα μην θεωρήσετε ούτε για μια στιγμή ότι δεν είναι καλό επειδή είναι δωρεάν. Από πολλούς θεωρείται το καλύτερο βιβλίο για να μάθει κάποιος C++. Βλέπετε ο Eckel είναι καθηγητής προγραμματισμού και όχι απλά προγραμματιστής οπότε ξέρει να διδάσκει.
Ενδιαφέρον θα έχει κάποιος να μας κάνει κάποιος μια εισαγωγή σε GUI προγραμματισμό καθώς και στα εργαλεία make και configure.
Επίσης ωραία θα ήταν κάποια tips για το πως μια εφαρμογή που αναπτύσούμε για τον εαυτό μας μπορεί να μετατρεπεί σε εφαρμογή για το ευρύ κοινό. Πως να λειτουργεί πχ ανεξαρτήτως έκδοσης και διανομής GNU/Linux.Gentoo Linux: mess with the best and you might learn something
δικτυακή παράσταση | twitter | within specifications
Αν φτάσω τα 100 και με ρωτήσουν το μυστικό της μακροζωίας θα πω: Πάντα είχα 3 ποτήρια μπροστά μου· ένα με νερό, ένα με καφέ & ένα με αλκοόλ.
-
18-05-05, 00:19 #6
θέλω κι εγώ guiiiiiiiii
Βιβλία αναφοράς είναι και του Knuth για τους αλγόριθμους, αλλά πολλές σελίδες βρε παιδί μου.
Όχι ότι ο thinking in C++, in java, in patterns κτλ πάει πίσω.
Δώστε στο λαό tutorials!
-
18-05-05, 12:27 #7
Για μια εισαγωγή στη C++ μπορεί να σας φανεί χρήσιμο το
http://www.materials.uoc.gr/~tetycpp
Παρέχει εκτός των άλλων και (ημιτελείς) σημειώσεις.
-
18-05-05, 13:01 #8
Πέρα από τα βασικά της γλώσσας, αν κάποιος θέλει να ασχοληθεί με προγραμματισμό σε linux θα πρέπει οποσδήποτε να γνωρίζει μερικά βασικά πράγματα για το περιβάλλον (συστημα αρχειων, threads κλπ).
Εδω θα βρει κανεις μια πολύ καλή περιγραφή: http://www.advancedlinuxprogramming.com
Για IDE μπορούν να χρησιμοποιηθούν ειτε το anjuta (σε gnome) είτε το KDevelop (σε KDE), αν και προσωπικά ειμαι λάτρης του make και ενος καλού editor. (χρησιμοποιώ τον kate..... καλα μη βαρατε!!!!)
-
18-05-05, 13:03 hmpf #9
To iostream.h einai deprecated kai to g++ tha sto pei san error
opote gia na to kaneis CGI
Κώδικας://SmallTest.cpp #include <iostream> using namespace std; int main() { char MyInput[256]; cin >> MyInput; cout << "<HTML><HEADER><TITLE>TEST</TITLE></HEADER><BODY>"; cout << MyInput; cout << "</BODY></HTML>"; return 0; }
g++ -o Small SmallTest.cpp
Test me
echo Hello|./Small>MyTest.html;konqueror MyTest.html
Gia na to trejeis san CGI, valto ston katallhlo ypokatalogo toy Apache kai meta kalese to apo to address bar pernontas parametroys.
O apache apla tha kalesei to programa kai tha toy perasei tis parametroys sto stdin.
Ayto poy leipei apo ayto to programa einai enas parser gia na katalavainei tis jexwristes parametroys.
Otan to kaleseis apo browser tha soy deijei tis parametroys poy toy perases.
Kaneis kati sygkekrimeno h apla rwtas?
To anjuta einai fiska sta bugs kai de tha to synistoysa se kanenan gia prwto perivallon programatismoy...O Vim (h h kate) kai ena terminal einai anantikatastata
P.S. Gia to orio twn 256 xarakthrwn den eimai sigoyros, apla evala mia timh.Τελευταία επεξεργασία από το μέλος DeadAtHeaven : 18-05-05 στις 14:57.
-
ΣΩΣΤΟΟΟΟΟΣΣΣΣ!
Αν αντί για 256 βάζαμε μία new char* ή ακόμα καλύτερα χρησιμοποιούσαμε ένα vector;
Κώδικας:#include <iostream> #include <string> #include <algorithm> #include <vector> using std::cout; using std::cin; using std::string; using std::vector; int main() { vector name_list; string input; while ( cin>>input ) name_list.push_back ( input ); std::copy ( name_list.begin(), name_list.end(), std::ostream_iterator(cout, "\n" ) ); return 0; }
Τα dynamic (λέγε με new char*) μπορούν να κάνουν κάποια πολύ ΑΓΡΙΑ λάθη,
ενώ τα string/vector/deques της STL είναι ο τρόπος.
Προτείνω το GNU C++ for Linux του Tom Swan (δεν ξέρω αν έχει βγει νέα έκδοση, αυτό που έχω είναι του 1999!) και το the art of Unix programming του «Θεού» Raymond με συνεισφορές από τον Ken Thompson (δημιουργός του Unix στην AT&T).
Πώς θα κάναμε αυτό το πρόγραμμα να καλεία μία function, η οποία θα ήταν σε ξεχωριστό αρχείο, ενώ θα υπήρχε και header αρχειο. Μετά πώς θα κάναμε compile αναξάρτητα τα δύο αρχεία (του main() και του functio()) και link μέσα από ένα make αρχείο;Τελευταία επεξεργασία από το μέλος pelasgian : 18-05-05 στις 18:14.
... when you damp oscillations, you lose the high points as well as the low.
改善 - kai zen - continuous change for the better - the Tao of Linux.
Linux χωρίς εγκατάσταση, δωρεάν ΝΟΜΙΜΟ office, browser χωρίς ιούς ,
δωρεάν εγκατάσταση Linux, δωρεάν raytracer, γιατί το δωρεάν είναι όλα τα λεφτά...
ΟΔΗΓΙΕΣ εγκατάστασης Linux
-
Αρχικό μήνυμα από crimson... when you damp oscillations, you lose the high points as well as the low.
改善 - kai zen - continuous change for the better - the Tao of Linux.
Linux χωρίς εγκατάσταση, δωρεάν ΝΟΜΙΜΟ office, browser χωρίς ιούς ,
δωρεάν εγκατάσταση Linux, δωρεάν raytracer, γιατί το δωρεάν είναι όλα τα λεφτά...
ΟΔΗΓΙΕΣ εγκατάστασης Linux
-
18-05-05, 13:46 #12
Χμμμμ θα σας παρακαλούσα πoλύ να κάνετε edit τα μήνύματα σας και τα κομμάτια κώδικα να τα βάλετε μέσα σε code tag, επίσης ουτε σε αυτό το section επιτρέπονται τα greeklish όπως σε όλόκληρο το forum!
-
18-05-05, 14:56 #13Αρχικό μήνυμα από pelasgian
Αρχικό μήνυμα από pelasgian
-
Ναι, να δώσει κάποιος ένα παράδειγμα separate compilation με χρήση make όπως ζήτησε ο mrsaccess.
... when you damp oscillations, you lose the high points as well as the low.
改善 - kai zen - continuous change for the better - the Tao of Linux.
Linux χωρίς εγκατάσταση, δωρεάν ΝΟΜΙΜΟ office, browser χωρίς ιούς ,
δωρεάν εγκατάσταση Linux, δωρεάν raytracer, γιατί το δωρεάν είναι όλα τα λεφτά...
ΟΔΗΓΙΕΣ εγκατάστασης Linux
-
18-05-05, 19:35 #15
Έχω προσπαθήσει δύο φορές να κάνω post και μου βγάζει forbidden access όταν το μήνυμα είναι σχετικά μεγάλο. Κάποιο bug?
Δείτε το Attachment
edit by wintech2003:
post.txt for Linux, post2.txt for Windows (για κάποιο λόγο στα Windows δεν μου διάβαζε το txt σωστα, οπότε το έφτιαξα, το ξανανέβασα για όσους διαβάζουν απο notepad )Τελευταία επεξεργασία από το μέλος wintech2003 : 18-05-05 στις 20:12.
Παρόμοια Θέματα
-
Linux Scripting και Γραφικό Περιβάλλον
Από k_77 στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 7Τελευταίο Μήνυμα: 13-11-07, 22:50 -
προβλημα γραματοσειρων στο forum!! [σε περιβάλλον linux]
Από chek2fire στο φόρουμ Η Γνώμη σαςΜηνύματα: 10Τελευταίο Μήνυμα: 21-05-07, 20:45 -
Zip και ελληνικά ονόματα αρχείων σε περιβάλλον utf-8 & Linux
Από GoofyX στο φόρουμ Unix - LinuxΜηνύματα: 20Τελευταίο Μήνυμα: 15-02-07, 18:54 -
Wireless Cards που λειτουργούν σωστά στο GNU/Linux
Από routerjoc στο φόρουμ Unix - LinuxΜηνύματα: 0Τελευταίο Μήνυμα: 18-10-06, 12:30 -
Γλώσσα προγραμματισμού για Linux-Windows
Από giorgosc61 στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμούΜηνύματα: 163Τελευταίο Μήνυμα: 21-01-06, 01:16
Bookmarks