jtsc21 Δημοσ. 12 Απριλίου 2008 Δημοσ. 12 Απριλίου 2008 γεια σας παιδια εχω την εξης απορια: γινετε σε ενα προγραμμα στη C να εκτυπωνω τα αποτελεσματα εγχρωμα?
warchief Δημοσ. 12 Απριλίου 2008 Δημοσ. 12 Απριλίου 2008 Ναι γίνεται πρέπει να παίξεις με τα escape sequences της κονσόλας (σε UNIX, σε Windows δεν ξέρω τι γίνεται...) Για παράδειγμα: #include <stdio.h> #include <string> using std::string; int main(void) { string RED = "\033[1;31m"; string RED_DARK = "\033[0;31m"; string GREEN = "\033[0;32m"; string BLUE = "\033[1;34m"; string YELLOW = "\033[1;33m"; string WHITE = "\033[1;37m"; string CYAN = "\033[1;36m"; string NC = "\033[0;0m"; string PURPLE = "\033[0;35m"; printf("%sI do red now!\n", RED.c_str()); printf("%sNow I do yellow!\n", YELLOW.c_str()); printf("%sAnd now I do green!\n", GREEN.c_str()); printf("Finally %sI do %sa %smix!!!\n", RED_DARK.c_str(), BLUE.c_str(), CYAN.c_str()); printf("%sReset the terminal now\n", NC.c_str()); return 0; } // Θέλει c++ για να έχεις την string, αλλά μπορείς να το κάνεις σε c // κλασσικά αντί για string, const char *
darth_revan Δημοσ. 12 Απριλίου 2008 Δημοσ. 12 Απριλίου 2008 Νομίζω πως όχι (με καθαρή C...). Είναι θέμα κονσόλας. (νομίζω) edit: Sorry τώρα είδα την απάντηση του warchief...
Directx Δημοσ. 12 Απριλίου 2008 Δημοσ. 12 Απριλίου 2008 Σε DOS/Windows μπορείς να δεις την ρουτίνα cprintf η οποία επιτρέπει την εκτύπωση έγχρωμου κειμένου. Η cprintf περιλαμβάνεται στην (μη ANSI) βιβλιοθήκη conio.h η οποία παρέχεται στους περισσότερους DOS & Windows compilers (για παράδειγμα CodeGear Turbo C++). Εναλλακτικά, επί εποχή DOS μπορούσες να χρησιμοποιήσεις ANSI escape sequences μέσο printf εφόσον είχες εγκατεστημένο το ANSI.SYS driver.
Aesmade Δημοσ. 13 Απριλίου 2008 Δημοσ. 13 Απριλίου 2008 Επίσης με χρήση της windows.h μπορείς να κάνεις > SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),wAttributes); (Για τις τιμές που μπορεί να πάρει η παράμετρος wAttributes δες στο http://msdn2.microsoft.com/en-us/library/ms682088(VS.85).aspx)
Directx Δημοσ. 13 Απριλίου 2008 Δημοσ. 13 Απριλίου 2008 Έτσι είναι, μπορείς να κάνεις την ίδια δουλεία και από το Console API, απλά το conio.h στα Windows 32bit κρύβει τις άμεσες και πολύπλοκες, ορισμένες φορές, κλήσεις στο ισχυρότατο αυτό API και καθιστά ευκολότερο το port DOS console προγραμμάτων (που βασίζονται στην conio.h) στο περιβάλλον της Windows console. Στους DOS compilers, το conio.h κρύβει τις άμεσες κλήσεις στο Video BIOS Interface (Int 10h).
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.