Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी . में कॉन्स्ट इंट*, कॉन्स्ट इंट * कॉन्स्ट, और इंट कॉन्स्ट * के बीच अंतर

सूचक

C प्रोग्रामिंग भाषा में, *p एक पॉइंटर में संग्रहीत मान का प्रतिनिधित्व करता है और p मान के पते का प्रतिनिधित्व करता है, जिसे पॉइंटर के रूप में संदर्भित किया जाता है।

कॉन्स्ट इंट* और int const* कहता है कि सूचक एक निरंतर int को इंगित कर सकता है और इस सूचक द्वारा इंगित int के मान को बदला नहीं जा सकता है। लेकिन हम पॉइंटर के मान को बदल सकते हैं क्योंकि यह स्थिर नहीं है और यह किसी अन्य स्थिरांक को इंगित कर सकता है।

const int* const कहता है कि सूचक एक निरंतर int को इंगित कर सकता है और इस सूचक द्वारा इंगित int के मान को बदला नहीं जा सकता है। और हम पॉइंटर के मान को भी नहीं बदल सकते हैं क्योंकि यह अब स्थिर है और यह किसी अन्य स्थिरांक को इंगित नहीं कर सकता है।

अंगूठे का नियम वाक्य रचना को दाएं से बाएं ओर नाम देना है।

// constant pointer to constant int
const int * const
// pointer to constant int
const int *

उदाहरण (सी)

टिप्पणी किए गए गलत कोड को हटा दें और त्रुटि देखें।

#include <stdio.h>
int main() {
   //Example: int const*
   //Note: int const* is same as const int*
   const int p = 5;
   // q is a pointer to const int
   int const* q = &p;
   //Invalid asssignment
   // value of p cannot be changed
   // error: assignment of read-only location '*q'
   //*q = 7;
   const int r = 7;
   //q can point to another const int
   q = &r;
   printf("%d", *q);
   //Example: int const* const
   int const* const s = &p;
   // Invalid asssignment
   // value of s cannot be changed
   // error: assignment of read-only location '*s'
   // *s = 7;
   // Invalid asssignment
   // s cannot be changed
   // error: assignment of read-only variable 's'
   // s = &r;
   return 0;
}

आउटपुट

7

  1. कॉन्स्ट इंट *, कॉन्स्ट इंट * कॉन्स्ट और इंट कॉन्स्ट * में क्या अंतर है?

    यहां हम पूर्णांक पॉइंटर्स पूर्णांक स्थिरांक और पूर्णांक स्थिरांक पॉइंटर्स के आधार पर कुछ भिन्न प्रकार की परिवर्तनीय घोषणा देखेंगे। उन्हें निर्धारित करने के लिए हम दक्षिणावर्त/सर्पिल नियम का उपयोग करेंगे। शर्तों पर चर्चा करके हम नियमों को भी समझ सकते हैं। स्थिरांक int * . इसका उपयोग कंपाइलर को यह ब

  1. C# और .Net . के बीच अंतर

    C# एक प्रोग्रामिंग लैंग्वेज है और .NET एक फ्रेमवर्क है। .NET में सामान्य भाषा रनटाइम (CLR) है, जो .NET ढांचे का एक आभासी घटक है। .NET में न केवल C# है, बल्कि इसके माध्यम से आप VB, F# आदि के साथ काम कर सकते हैं। C# .NET का एक हिस्सा है और इसमें निम्नलिखित विशेषताएं हैं - बूलियन स्थितियां स्वचालित

  1. गो और जावा के बीच अंतर.

    जाओ गो एक प्रक्रियात्मक प्रोग्रामिंग भाषा है। पैकेज का उपयोग करके कार्यक्रमों को इकट्ठा किया जाता है। यह गतिशील भाषाओं के समान पर्यावरण अपनाने वाले पैटर्न का समर्थन करता है। जावा जावा एक ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग लैंग्वेज है। जावा शांत तेज, विश्वसनीय और सुरक्षित है। यह सबसे व्यापक रूप से उपयो