volatile uint8_t reset_mask[768] = {0}
अब मैं आंतरिक संचालन के दौरान इस सरणी तत्वों के मानों को 1 पर सेट कर रहा हूं।memset का उपयोग कर अस्थिर सरणी को शून्य पर कैसे सेट करें?
एक और कार्यात्मक कॉल में, मैं 0. एक तरह से करने के लिए इस सरणी के सभी तत्वों को निर्धारित करने की आवश्यकता पाश के लिए उपयोग करना है, लेकिन मेरा मानना है कि memset
memset(reset_mask, 0, sizeof(reset_mask));
का उपयोग करके सरणी के सभी तत्वों को आवंटित करने के लिए बेहतर तरीका है
लेकिन मैं इस त्रुटि हो रही है: -
" 'शून्य *' टाइप करने के लिए दूर क्वालिफायर डाले 'अस्थिर uint8_t * {उर्फ अस्थिर अहस्ताक्षरित चार *}' प्रकार से डाली" मामले हम यहाँ memset उपयोग नहीं कर सकते में , है इस अस्थिर सरणी के सभी तत्वों को एक बार में सेट करने का एक बेहतर तरीका है?
'std :: fill (std :: start (reset_mask), std :: end (reset_mask), 0); 'काम करता है। –
@ आर। मार्टिनिन्हो फर्नांडीस यह एक उत्तर होना चाहिए (क्योंकि यह वास्तव में एकमात्र सही उत्तर है)। सी में, ज़ाहिर है, उसे अपने लूप का उपयोग करना होगा। –
आप अस्थिर सरणी का उपयोग किसके लिए कर रहे हैं? आपको कुछ/सभी इंटरप्ट अक्षम करना पड़ सकता है? –