Σελ. 1 από 3 123 ΤελευταίαΤελευταία
Εμφάνιση 1-15 από 38
  1. #1
    Εγγραφή
    19-04-2004
    Μηνύματα
    6.372
    Downloads
    2
    Uploads
    0
    Άρθρα
    5
    Σκέφτηκα να ανοίξω αυτό το νήμα, για να δω αν υπάρχει σχετικό ενδιαφέρον για συζήτηση και ανταλλαγή απόψεων. Κατά τη ταπεινή μου γνώμη (και όποιος διαφωνεί την έβαψε ) το ενδιαφέρον αρχικά θα ήταν να συζητήσουμε πώς ξεκινάει κάποιος τον προγραμματισμό σε 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 και όχι μέσω της κονσόλας.
    ... 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

  2. #2
    Εγγραφή
    01-07-2003
    Περιοχή
    θεσσαλονικη
    Ηλικία
    59
    Μηνύματα
    1.548
    Downloads
    4
    Uploads
    0
    Ταχύτητα
    24576/1024
    ISP
    Forthnet
    DSLAM
    Forthnet - ΚΑΛΑΜΑΡΙΑ
    Παράθεση Αρχικό μήνυμα από pelasgian
    Σκέφτηκα να ανοίξω αυτό το νήμα, για να δω αν υπάρχει σχετικό ενδιαφέρον για συζήτηση και ανταλλαγή απόψεων. ...

    Ας μας πει τώρα κάποιος, πώς θα βάλουμε αυτό το πρόγραμμα σαν CGI σε μία σελίδα Web ή πώς θα το πετάξουμε σε μία TCP/IP πόρτα, οπότε και θα δούμε το αποτέλεσμά του μέσω του internet και όχι μέσω της κονσόλας.
    Φίλε 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.

  3. #3
    Εγγραφή
    19-04-2004
    Μηνύματα
    6.372
    Downloads
    2
    Uploads
    0
    Άρθρα
    5
    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

  4. #4
    Εγγραφή
    15-10-2004
    Μηνύματα
    522
    Downloads
    2
    Uploads
    0
    Τύπος
    ADSL2+ Forthnet Full
    Ταχύτητα
    24/1Mbit
    ISP
    ForthNet
    Router
    usr 9105
    Νομίζω για να γίνει "cgi" θέλει ένα cout στην αρχή να εκτυπώνει κάτι σαν
    <html><body> κι ένα στο τέλος να εκτυπώνει </body></html>
    Καλό το bash αλλά αν έχεις να διαλέξεις για cgi ανάμεσα σε bash και C, διάλεξε C.

  5. #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 ποτήρια μπροστά μου· ένα με νερό, ένα με καφέ & ένα με αλκοόλ.

  6. #6
    Εγγραφή
    15-10-2004
    Μηνύματα
    522
    Downloads
    2
    Uploads
    0
    Τύπος
    ADSL2+ Forthnet Full
    Ταχύτητα
    24/1Mbit
    ISP
    ForthNet
    Router
    usr 9105
    θέλω κι εγώ guiiiiiiiii
    Βιβλία αναφοράς είναι και του Knuth για τους αλγόριθμους, αλλά πολλές σελίδες βρε παιδί μου.
    Όχι ότι ο thinking in C++, in java, in patterns κτλ πάει πίσω.
    Δώστε στο λαό tutorials!

  7. #7
    Εγγραφή
    19-03-2003
    Περιοχή
    Greece.gif
    Ηλικία
    53
    Μηνύματα
    16
    Downloads
    2
    Uploads
    0
    Τύπος
    VDSL2
    Ταχύτητα
    102400/10240
    ISP
    Vodafone
    DSLAM
    HOL - ΚΝΩΣΣΟΣ
    Router
    ΖΤΕ ZXHN H267A
    SNR / Attn
    9,4(dB) / 5,3(dB)
    Path Level
    Fastpath
    Για μια εισαγωγή στη C++ μπορεί να σας φανεί χρήσιμο το

    http://www.materials.uoc.gr/~tetycpp

    Παρέχει εκτός των άλλων και (ημιτελείς) σημειώσεις.

  8. #8
    Εγγραφή
    23-03-2004
    Ηλικία
    56
    Μηνύματα
    3.905
    Downloads
    5
    Uploads
    0
    Τύπος
    FTTH
    Ταχύτητα
    102400/10240
    ISP
    Vodafone
    Router
    Vodafone PS 6
    Πέρα από τα βασικά της γλώσσας, αν κάποιος θέλει να ασχοληθεί με προγραμματισμό σε linux θα πρέπει οποσδήποτε να γνωρίζει μερικά βασικά πράγματα για το περιβάλλον (συστημα αρχειων, threads κλπ).
    Εδω θα βρει κανεις μια πολύ καλή περιγραφή: http://www.advancedlinuxprogramming.com

    Για IDE μπορούν να χρησιμοποιηθούν ειτε το anjuta (σε gnome) είτε το KDevelop (σε KDE), αν και προσωπικά ειμαι λάτρης του make και ενος καλού editor. (χρησιμοποιώ τον kate..... καλα μη βαρατε!!!!)

  9. #9
    Εγγραφή
    17-11-2004
    Περιοχή
    Εντός σχεδίου
    Μηνύματα
    97
    Downloads
    0
    Uploads
    0
    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;
    }
    Compile me
    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.

  10. #10
    Εγγραφή
    19-04-2004
    Μηνύματα
    6.372
    Downloads
    2
    Uploads
    0
    Άρθρα
    5
    ΣΩΣΤΟΟΟΟΟΣΣΣΣ!

    Αν αντί για 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;
    }
    Βλέπεις, τα static chars (όπως και τα static cars) καίνε πολλά resources.
    Τα 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

  11. #11
    Εγγραφή
    19-04-2004
    Μηνύματα
    6.372
    Downloads
    2
    Uploads
    0
    Άρθρα
    5
    Παράθεση Αρχικό μήνυμα από crimson
    Νομίζω για να γίνει "cgi" θέλει ένα cout στην αρχή να εκτυπώνει κάτι σαν
    <html><body> κι ένα στο τέλος να εκτυπώνει </body></html>
    Καλό το bash αλλά αν έχεις να διαλέξεις για cgi ανάμεσα σε bash και C, διάλεξε C.
    Τι θα έλεγες αν έβαζα το C πρόγραμμα στο /bin και πέταγα τα wrapper bash scripts στο apache directory του cgi; (όπου και τα τρέχω ως χρήστης internet -> τελείως χωρίς πρόσβαση οπουδήποτε).
    ... 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

  12. #12
    Το avatar του μέλους EvilHawk
    EvilHawk Guest
    Χμμμμ θα σας παρακαλούσα πoλύ να κάνετε edit τα μήνύματα σας και τα κομμάτια κώδικα να τα βάλετε μέσα σε code tag, επίσης ουτε σε αυτό το section επιτρέπονται τα greeklish όπως σε όλόκληρο το forum!

  13. #13
    Εγγραφή
    17-11-2004
    Περιοχή
    Εντός σχεδίου
    Μηνύματα
    97
    Downloads
    0
    Uploads
    0
    Παράθεση Αρχικό μήνυμα από pelasgian
    ΣΩΣΤΟΟΟΟΟΣΣΣΣ!

    Αν αντί για 256 βάζαμε μία new char* ή ακόμα καλύτερα χρησιμοποιούσαμε ένα vector;
    .
    .
    .

    Βλέπεις, τα static chars (όπως και τα static cars) καίνε πολλά resources.
    Τα dynamic (λέγε με new char*) μπορούν να κάνουν κάποια πολύ ΑΓΡΙΑ λάθη,
    ενώ τα string/vector/deques της STL είναι ο τρόπος.
    ΟΚ, φτιάξε το με STL και κάνε μετά profile και σύγκρινε τις ταχύτητες.Προσωπικά θα χρησιμοποιούσα STL μόνο αν υπήρχε απόλυτη ανάγκη.

    Παράθεση Αρχικό μήνυμα από pelasgian
    Πώς θα κάναμε αυτό το πρόγραμμα να καλεία μία function, η οποία θα ήταν σε ξεχωριστό αρχείο, ενώ θα υπήρχε και header αρχειο. Μετά πώς θα κάναμε compile αναξάρτητα τα δύο αρχεία (του main() και του functio()) και link μέσα από ένα make αρχείο;
    Προσπαθείς να κάνεις κάτι συγκεκριμένο η απλά ρωτάς;

  14. #14
    Εγγραφή
    19-04-2004
    Μηνύματα
    6.372
    Downloads
    2
    Uploads
    0
    Άρθρα
    5
    Ναι, να δώσει κάποιος ένα παράδειγμα 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

  15. #15
    Εγγραφή
    17-11-2004
    Περιοχή
    Εντός σχεδίου
    Μηνύματα
    97
    Downloads
    0
    Uploads
    0
    Έχω προσπαθήσει δύο φορές να κάνω post και μου βγάζει forbidden access όταν το μήνυμα είναι σχετικά μεγάλο. Κάποιο bug?

    Δείτε το Attachment




    edit by wintech2003:
    post.txt for Linux, post2.txt for Windows (για κάποιο λόγο στα Windows δεν μου διάβαζε το txt σωστα, οπότε το έφτιαξα, το ξανανέβασα για όσους διαβάζουν απο notepad )
    Attached Files Attached Files
    Τελευταία επεξεργασία από το μέλος wintech2003 : 18-05-05 στις 20:12.

Σελ. 1 από 3 123 ΤελευταίαΤελευταία

Παρόμοια Θέματα

  1. Linux Scripting και Γραφικό Περιβάλλον
    Από k_77 στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμού
    Μηνύματα: 7
    Τελευταίο Μήνυμα: 13-11-07, 22:50
  2. Μηνύματα: 10
    Τελευταίο Μήνυμα: 21-05-07, 20:45
  3. Μηνύματα: 20
    Τελευταίο Μήνυμα: 15-02-07, 18:54
  4. Wireless Cards που λειτουργούν σωστά στο GNU/Linux
    Από routerjoc στο φόρουμ Unix - Linux
    Μηνύματα: 0
    Τελευταίο Μήνυμα: 18-10-06, 12:30
  5. Γλώσσα προγραμματισμού για Linux-Windows
    Από giorgosc61 στο φόρουμ Προγραμματισμός και γλώσσες προγραμματισμού
    Μηνύματα: 163
    Τελευταίο Μήνυμα: 21-01-06, 01:16

Tags για αυτό το Θέμα

Bookmarks

Bookmarks

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύσετε νέα θέματα
  • Δεν μπορείτε να δημοσιεύσετε νέα μηνύματα
  • Δεν μπορείτε να αναρτήσετε συνημμένα
  • Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας
  •  
  • Τα BB code είναι σε λειτουργία
  • Τα Smilies είναι σε λειτουργία
  • Το [IMG] είναι σε λειτουργία
  • Το [VIDEO] είναι σε λειτουργία
  • Το HTML είναι εκτός λειτουργίας