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

C में void पॉइंटर


C में void पॉइंटर एक ऐसा पॉइंटर है जो किसी भी डेटा टाइप से संबद्ध नहीं है। यह स्टोरेज में किसी डेटा लोकेशन की ओर इंगित करता है यानी वेरिएबल्स के एड्रेस की ओर इंगित करता है। इसे जनरल पर्पज पॉइंटर भी कहा जाता है। C में, malloc() और calloc() फंक्शन्स void * या जेनेरिक पॉइंटर्स लौटाते हैं।

इसकी कुछ सीमाएं हैं −

  1. पॉइंटर अंकगणित void पॉइंटर के साथ संभव नहीं है क्योंकि इसका कोई ठोस आकार नहीं होता।
  2. इसे डीरेफरेंस नहीं किया जा सकता।

एल्गोरिदम

Begin
    इंटीजर डेटा टाइप का a घोषित करें
    a = 7 इनिशियलाइज़ करें
    फ्लोट डेटा टाइप का b घोषित करें
    b = 7.6 इनिशियलाइज़ करें
    void के रूप में पॉइंटर p घोषित करें
    p पॉइंटर को a पर इनिशियलाइज़ करें
    "Integer variable is" प्रिंट करें
    पॉइंटर p का उपयोग करके a का मान प्रिंट करें
    p पॉइंटर को b पर इनिशियलाइज़ करें
    "Float variable is" प्रिंट करें
    पॉइंटर p का उपयोग करके b का मान प्रिंट करें
End.

उदाहरण कोड

#include <stdlib.h>

int main() {
    int a = 7;
    float b = 7.6;
    void *p;
    p = &a;
    printf("Integer variable is = %d", *( (int*) p) );
    p = &b;
    printf("\nFloat variable is = %f", *( (float*) p) );
    return 0;
}

आउटपुट

Integer variable is = 7
Float variable is = 7.600000
  1. - PHP Generator क्लास

    परिचय foreach जैसे लूपिंग कंस्ट्रक्ट का उपयोग करके डेटा के बड़े संग्रह को ट्रैवर्स करने के लिए बड़ी मेमोरी और काफी प्रोसेसिंग समय की आवश्यकता होगी। जेनरेटर के साथ, इन ओवरहेड्स के बिना डेटा के सेट पर पुनरावृत्त करना संभव है। एक जेनरेटर फ़ंक्शन सामान्य फ़ंक्शन के समान होता है। हालांकि, फ़ंक्शन में ret

  1. - C# में Action डेलीगेट

    Action डेलीगेट कोई मान नहीं लौटाता और इसे उस मेथड के साथ उपयोग किया जा सकता है जिसका रिटर्न टाइप void है।Action डेलीगेट घोषित करें।Action<int> del = Display;यहाँ हमारा मेथड है:public static void Display(int val) {    Console.WriteLine(val); }अब एक मान के साथ मेथड को कॉल करें।उदाहरणus

  1. - C# में डेटा वैल्यू को पॉइंटर के रूप में कैसे रिट्रीव करें?

    C# में unsafe कॉन्टेक्स्ट में पॉइंटर्स का उपयोग करके मेमोरी एड्रेस पर सीधे एक्सेस किया जा सकता है। उदाहरण using System; namespace UnsafeCodeApplication { class Program { public static void Main() { unsafe { int var = 100; int* p = &var; // एड्