आप संरचना के किसी विशेष सदस्य को अस्थिर के रूप में कैसे घोषित करते हैं?सी में, आप संरचना के सदस्यों को अस्थिर के रूप में कैसे घोषित करते हैं?
उत्तर
गैर struct
क्षेत्रों के रूप में वास्तव में एक ही:
#include <stdio.h>
int main (int c, char *v[]) {
struct _a {
int a1;
volatile int a2;
int a3;
} a;
a.a1 = 1;
a.a2 = 2;
a.a3 = 3;
return 0;
}
आप "volatile struct _a {...}"
का उपयोग करके पूरे struct
के रूप में अस्थिर चिह्नित कर सकते हैं, लेकिन विधि के ऊपर व्यक्तिगत क्षेत्रों के लिए है।
सुंदर सीधे आगे होना चाहिए this लेख के अनुसार:
अंत में, यदि आप एक struct या संघ को अस्थिर लागू होते हैं, संपूर्ण सामग्री struct/संघ के अस्थिर कर रहे हैं। यदि आप यह व्यवहार नहीं चाहते हैं, तो आप संरचना/संघ के व्यक्तिगत सदस्यों को अस्थिर योग्यता लागू कर सकते हैं।
सी/सी ++ अस्थिर कीवर्ड पर बस एक चेतावनी।
जब तक कि आप नहीं जानते कि आप क्या कर रहे हैं, आपको इसका कभी भी उपयोग नहीं करना चाहिए।
C/C++ अस्थिर! = जावा/सी # अस्थिर
अस्थिर थ्रेडेड कोड में मदद नहीं करता है, जब तक आप वास्तव में पता है कि तुम क्या कर रहे हैं, तो आप C++ 0x परमाणु टेम्पलेट (या कुछ इसी तरह) का उपयोग करने की जरूरत है।
हार्डवेयर रजिस्टरों को नियंत्रित करते समय मुझे अस्थिरता का उपयोग करने का एकमात्र समय था।
तो सदस्यों की घोषणा के रूप में अस्थिर (यानी एक संकेत हैंडलर या अन्य (पास) परमाणु चर), तो आप शायद नहीं अस्थिर (का उपयोग करना चाहिए के रूप में सबसे compilers अगर इसकी नहीं इसे दूर अनुकूलित करेंगे कारण कुछ व्यवधान सर्विसिंग के लिए बदल नहीं कर रहे हैं पर्याप्त पास)।
अन्यथा, के रूप में अन्य लोगों ने कहा .. बस उदासीनता देखने के लिए अगर आपके संकलक वास्तव में आप :)
कुछ मामलों में, यानी के साथ सहमत हैं का उपयोग यह तो एएसएम की जांच जीसीसी के कुछ संस्करणों .. इसके लायक उन पर गौर करके उदासीनता।
- 1. आप सी ++ हेडर में सरणी कैसे घोषित करते हैं?
- 2. आप एक शब्दकोश प्रविष्टि के मूल्यों को mutable के रूप में कैसे घोषित करते हैं?
- 3. अप्रयुक्त सदस्यों को संरचना में कैसे जांचें?
- 4. आप एक नक्शा कैसे शुरू करते हैं जो संरचना के रूप में मूल्य लेता है?
- 5. आप फाइलों में सी # कोड कैसे व्यवस्थित करते हैं?
- 6. आप डेटा संरचना में संगीत का प्रतिनिधित्व कैसे करते हैं?
- 7. अस्थिर संरचना सेमेटिक्स
- 8. सी में स्ट्रिंग स्थिरांक कैसे घोषित करते हैं?
- 9. सी ++ संरचना में सदस्यों को गतिशील रूप से और स्थिर रूप से
- 10. संपत्ति को वस्तु के रूप में घोषित करें?
- 11. सी ++ 11 - गैर-स्थिर डेटा सदस्यों को 'ऑटो' के रूप में घोषित करना
- 12. आप XAML- घोषित लेबल में दो शब्दों के बीच लाइन ब्रेक को कैसे मजबूर करते हैं?
- 13. यदि आप इसे कक्षा के सदस्य के रूप में घोषित करते हैं तो एक fstream को तुरंत कैसे चालू करें?
- 14. सी # परियोजनाओं में आप app.config को कैसे एम्बेड करते हैं?
- 15. आप सी में संसाधन फ़ाइलों को कैसे एम्बेड करते हैं?
- 16. आप फ़ाइल आकार को सी # में कैसे प्राप्त करते हैं?
- 17. संरचना/कक्षा के सदस्यों का स्पष्ट प्रारंभ
- 18. आप एक अनुमानित प्रतिनिधि इनलाइन कैसे घोषित करते हैं?
- 19. सी में एक परिवर्तनीय पूर्णांक के अनुसार 'संरचना' के सदस्यों तक कैसे पहुंचे?
- 20. मैं पाइथन में एक प्रकार के संरचना + संघ को उचित रूप से घोषित कैसे करूं?
- 21. ADO.NET में SQL पैरामीटर मान के रूप में आप 'DEFAULT' को कैसे निर्दिष्ट करते हैं?
- 22. सी फ़्रेड() जादुई रूप से गतिशील रूप से आवंटित संरचना सदस्यों को पढ़ रहा है, कैसे?
- 23. आप एक कस्टम उपयोगकर्ता नियंत्रण को संवाद के रूप में कैसे प्रदर्शित करते हैं?
- 24. सी संरचना के मार्शलिंग को सी #
- 25. आप जावास्क्रिप्ट में गार्ड क्लॉज को कैसे कार्यान्वित करते हैं?
- 26. आप BSTR को wchar_t [] में कुशलतापूर्वक कॉपी कैसे करते हैं?
- 27. स्केल कन्स्ट्रक्टर में आप एक प्रकार के उपनाम कैसे घोषित करते हैं?
- 28. रूबी में आप पॉलिमॉर्फिज्म कैसे करते हैं?
- 29. आप ओवरलोडेड पूल ऑपरेटर को कैसे घोषित करते हैं और उपयोग करते हैं?
- 30. आप एक्सकोड में टीडीडी कैसे करते हैं?
मुझे लगता है कि आपने कहा है कि कड़ाई से जरूरी की तुलना में थोड़ा मजबूत है। अस्थिर थ्रेड कोड के साथ मदद करता है, खासकर सिंगल कोर एम्बेडेड प्लेटफॉर्म पर। लेकिन आपको यह जानना होगा कि इसका उपयोग कैसे करें। डीएमए के साथ या उसके बिना हार्डवेयर रजिस्टरों का संदर्भ देते समय यह प्रभावी रूप से अनिवार्य भी है, विशेष रूप से एक रजिस्टर जिसे स्थिति के लिए मतदान किया जाएगा। अपने कैश को समझना और इसे सही तरीके से प्रबंधित करना और अपने प्लेटफ़ॉर्म पर परमाणु संचालन कैसे करना है, यह समझना भी आवश्यक है। – RBerteig
आप सही हैं। मुझे नहीं पता था कि जब मैं डीएमए कहता था तो मैं सोच रहा था, मेरा मतलब एमएमआईओ था। मैंने कुछ बेहतर जवाब दिया है (मुझे उम्मीद है)। –
विकिपीडिया (http://en.wikipedia.org/wiki/Volatile_variable) के अनुसार, सी # में सी/सी ++ के समान व्यवहार होता है, जबकि केवल जावा का एक अलग अर्थपूर्ण होता है। –