Giorgos65ert Δημοσ. 3 Δεκεμβρίου 2015 Δημοσ. 3 Δεκεμβρίου 2015 Γεια σας προσπαθώ να καταλάβω τι κάνει το keyword volatile στην c++ έφτιαξα ένα απλό πρόγραμμα για να δω πως λειτουργεί αλλά τίποτα: Code: #include <iostream> int main(void) { int j = 0; for (int i = 0 ; i < 100 ; ++i) { j += 1; } for (volatile int i = 0 ; i < 100 ; ++i) // Ποια η διαφορα volatile με int? { j += i; } std::cout << j; //5050 return 0; } Μπορεί κάποιος να μου εξηγήσει?
Moderators Kercyn Δημοσ. 3 Δεκεμβρίου 2015 Moderators Δημοσ. 3 Δεκεμβρίου 2015 http://stackoverflow.com/questions/4437527/why-do-we-use-volatile-keyword-in-c 2
gon1332 Δημοσ. 3 Δεκεμβρίου 2015 Δημοσ. 3 Δεκεμβρίου 2015 Στην ουσία λες στον compiler να μην πειράξει για κανένα λόγο αυτές τις μεταβλητές. Συνήθως χρησιμοποιείται σε προγραμμάτα με παραλληλισμούς και με function handlers για μεταβλητές που παίζουν που φαίνονται εκ πρώτης ματιάς ότι δε χρησιμοποιούνται πουθενά, αλλά όντως έχουν λόγο που υπάρχουν. Ο compiler μπορεί να τις κάνει optimize out. 1
Giorgos65ert Δημοσ. 3 Δεκεμβρίου 2015 Μέλος Δημοσ. 3 Δεκεμβρίου 2015 Με λίγο search ακόμα βρήκα ότι χρησιμοποιείται και στο multithreading, ωραία μάθαμε και κάτι καινούργιο. Ευχαριστώ παιδιά για τον χρόνο σας!
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα