This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
cpp:osteams [2019/05/19 07:33] gthanos [Χρήση συναρτήσεων μορφοποίησης] |
cpp:osteams [2020/05/17 18:10] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Output Streams ====== | ||
| - | |||
| - | Όπως προαναφέρθηκε τα //streams// εισόδου χρησιμοποιούν τον τελεστη ''>>'' | ||
| - | |||
| - | <code cpp stdout.cpp> | ||
| - | #include < | ||
| - | |||
| - | using namespace std; | ||
| - | |||
| - | int main() { | ||
| - | string str(" | ||
| - | const double PI = 3.14159; | ||
| - | const int SIZE = 256; | ||
| - | | ||
| - | cout << str << " in CE325 course." | ||
| - | cout << " | ||
| - | cout << "SIZE is: " << SIZE << endl; | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | ====== Μεταβάλλοντας τη μορφοποίηση σε ένα stream ====== | ||
| - | |||
| - | Μπορείτε να αλλάξετε τη μορφοποίηση σε ένα stream με τους εξής δύο τρόπους: | ||
| - | * χρησιμοποιώντας τις συναρτήσεις μορφοποίησης **[[http:// | ||
| - | * χρησιμοποιώντας // | ||
| - | |||
| - | ===== Χρήση συναρτήσεων μορφοποίησης ===== | ||
| - | |||
| - | Ας υποθέσουμε ότι σε ένα //stream// θέλουμε η αριθμοί να εκτυπώνονται σε δεκαεξαδική μορφή. Προκειμένου να το πετύχουμε αυτό, θα πρέπει να κάνουμε τα εξής: | ||
| - | |||
| - | <code cpp ostream-format.cpp> | ||
| - | #include < | ||
| - | using namespace std; | ||
| - | |||
| - | int main() { | ||
| - | cout.setf(std:: | ||
| - | // | ||
| - | cout << 16 << endl; | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | O παραπάνω κώδικας δεν δουλεύει σωστά, διότι είναι απαραίτητη και η γραμμή που είναι σε σχόλια προκειμένου να δουλέψει σωστά η μορφοποίηση. Στην πράξη, θα πρέπει εκτός από το να θέσουμε το //flag// '' | ||
| - | |||
| - | <code cpp ostream-format.cpp> | ||
| - | #include < | ||
| - | using namespace std; | ||
| - | |||
| - | int main() { | ||
| - | cout.setf(std:: | ||
| - | cout << 16 << endl; | ||
| - | } | ||
| - | </ | ||
| - | |||
| - | Η συγκεκριμένη μορφή της **set**, στην 1η παράμετρο λαμβάνει τα //flags// που θα ενεργοποιηθούν (εάν υπάρχουν περισσότερα του ενός, χρησιμοποιείτε τον δυαδικό τελεστή OR (|)) και στην 2η παράμετρο λαμβάνει το //group// των //flags// στο οποίο αυτά ανήκουν. Τα //flags// που ανήκουν στο συγκεκριμένο //group// θα μηδενιστούν πριν τεθούν τα //flags// που ορίζονται στην 1η παράμετρο. | ||