kaliakman Δημοσ. 15 Νοεμβρίου 2021 Share Δημοσ. 15 Νοεμβρίου 2021 (επεξεργασμένο) 21 λεπτά πριν, LukaP είπε Χαίρετε, παρατηρώ το τελικό κώδικα του αρχικού συντάκτη @nek1313 και τις βελτιώσεις που προτείνατε οι @imitheos & @kaliakman και πιο συγκεκριμένα το να χρησιμοποιήσει μέσα στην printf την toupper για τους ευνόητους λόγους. Πως θα μπορούσε όμως να το κάνει κάποιος αυτό, αφού η toupper είναι μέσα σε βρόχο και όπως επισημάνθηκε χωρίς να χρησιμοποιηθεί κάποια προσωρινή μεταβλητή; Μπορεί η όλη λειτουργικότητα ενός βρόχoυ να μπει μέσα σε ένα printf; Αν ναι, πως ακριβώς γίνεται; int main(int argc, char *argv[]) { if (argc == 1) { printf("Not enough arguments. Exiting..\n"); return -1; } int pos_max = 0; int max = 0; for (int i = 1; i < argc; i++) { int arg_len = strlen(argv[i]); if (arg_len > max) { max = arg_len; pos_max = i; } } int curr = 0; while (argv[pos_max][curr]) { printf("%c", toupper(argv[pos_max][curr++])); } printf("\n"); return 0; } Που το ξέθαψες το θέμα; Με μια γρήγορη ματιά αυτό ήθελε να πει φαντάζομαι ο imitheos. Επεξ/σία 15 Νοεμβρίου 2021 από kaliakman 1 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
imitheos Δημοσ. 15 Νοεμβρίου 2021 Share Δημοσ. 15 Νοεμβρίου 2021 (επεξεργασμένο) 23 λεπτά πριν, LukaP είπε Χαίρετε, παρατηρώ το τελικό κώδικα του αρχικού συντάκτη @nek1313 και τις βελτιώσεις που προτείνατε οι @imitheos & @kaliakman και πιο συγκεκριμένα το να χρησιμοποιήσει μέσα στην printf την toupper για τους ευνόητους λόγους. Πως θα μπορούσε όμως να το κάνει κάποιος αυτό, αφού η toupper είναι μέσα σε βρόχο και όπως επισημάνθηκε χωρίς να χρησιμοποιηθεί κάποια προσωρινή μεταβλητή; Μπορεί η όλη λειτουργικότητα ενός βρόχoυ να μπει μέσα σε ένα printf; Αν ναι, πως ακριβώς γίνεται; Που το θυμήθηκες μετά από τόσα χρόνια; Ο κώδικας του nek1313 έτρεχε μέσα σε ένα βρόχο την toupper και άλλαζε την μεταβλητή argv[τάδε]. Έπειτα τύπωνε με printf την μεταβλητή σαν "string". Μπορείς να πετάξεις την toupper μέσα στην printf σαν όρισμα και να τυπώνεις ένα - ένα χαρακτήρα μέσα στο βρόχο. Edit: Με πρόλαβε ο kaliakman. Αυτό που έγραψε εννοούσα (έτσι υποθέτω τουλάχιστον γιατί μιλάμε για το 2018) Δεν ήθελα να γράψω τη λύση γιατί βλέπω ότι έχεις μόνο 1 μήνυμα οπότε για να έκανες register μόνο για αυτό, μου φαντάζει άσκηση. Επεξ/σία 15 Νοεμβρίου 2021 από imitheos 1 1 Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
LukaP Δημοσ. 15 Νοεμβρίου 2021 Share Δημοσ. 15 Νοεμβρίου 2021 Κατανοητό, ευχαριστώ. Το έχω αυτό, να ξεθάβω θέματα που έχουν να κάνουν με βελτιστοποίηση και εκσφαλμάτωση συγκεκριμένου κώδικα ! Συνδέστε για να σχολιάσετε Κοινοποίηση σε άλλες σελίδες άλλες επιλογές
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα