Header Ads

ad728
  • New Updates

    Type Declaration Instruction


    Type Declaration Instruction

    ये वे Instructions होते है जिनका प्रयोग करके हम विभन्न प्रकार के Data को Computer की Memory में Store करने के लिए  Memory Reserve करते हैं | हम जिस किसी भी Data को Program में Process करना चाहते हैं , उस Data को Store करने के लिए हमें Memory की जरुरत होती है , जहां उन Process किए जाने वाले Data को Hold करके रखना होता है |

    Required Data के आधार पर हमें Memory में कुछ जगह Reserve करने के लिए जिन Instructions का प्रयोग करना होता है , उन्हें Type Declaration Instructions कहते है | इन Instructions का प्रयोग करके हम विभन्न प्रकार के Variable Declare करते है |

    एक “C” Program में हम कई तरह से Variables Create कर सकते है | Variable Declare करते समय ही हम उन Variable को Data Initialize कर सकते है | जैसे

    int i=19 , j=23 * 3 /2-1;

    जब हम किसी Variable को Create करते समय ही उसमें कोई एक निश्चित मान Initialize कर  देते है , तो इस प्रक्रिया को Implicit Initialization कहते हैं | उदाहरण के लिए उपरोक्त Instruction में variable i  को Declare करते समय ही उसमें मान 19 को Initialize कर दिया गया है , जो कि Implicit Initialization का उदाहरण है |

    जब हम किसी Variable को Declare करते समय उसमें किसी प्रकार की Calculation से Generate हो रहा है , इसलिए ये एक Explicit या Dynamic Initialization का उदाहरण है |

    हम किसी Variable को Create करने के बाद कोई दूसरा Variable Create करते है , तो उस दूसरे Variable में पहले Variable के मान को भी Initialize कर सकते है | जैसे :

    int i =19 , j=i;

    इस Statement में हमने जो मान Variable i में Store किया है , वही मान हमने Variable j में भी Store किया है | लेकिन यदि हम इस Declaration के क्रम को निम्नानुसार Change कर दे :

    int j = i , I = 19

    तो Compiler हमें निम्नानुसार Error प्रदान करता है :

    Error : Undefined Symbol ‘i’

    Error : Multiple declaration for ‘I’

    ऐसा इसलिए होता है , क्योंकि “C” का Compiler हर Instruction को Up to Down Left to Right Execute करता है |

    इस Instruction के आधार पर Compiler जब Variable j के मान से Variable I का मान initialize करने के लिए variable i की Memory Location को खोजता है , तो उसे ऐसा कोई Memory Location प्राप्त नहीं होता है ,  जिसका नाम i है क्योंकि Compiler ने अभी तक Variable i के लिए Memory में किसी Location को Reserve ही नहीं किया है और Compiler जब किसी ऐसे Variable की Memory खोजता है , जिसे उसने किसी Memory Block के साथ Associate करके Define ही नहीं किया है , तो वह “Undefined Symbol “ का Error Message Generate करता है |

    Compiler हमें दूसरी Error इसलिए Display करता है , क्योंकि Compiler जिस Variable i को पहले Memory में खोज चूका होता है ,उसी नाम का Variable हम बाद में Define करने की कोशिश करते है | इस स्थिति में पहले Instruction के लिए तो Compiler ये समझता है , कि हमने Variable i को Define नहीं किया है जबकि दूसरे Instruction के लिए Compiler  ये सोंचता है कि हम एक ही नाम के एक से ज्यादा Variables Define करने की कोशिश कर रहे है |

    इस तरह से एक Misplaced Instruction एक से ज्यादा प्रकार की Errors को Generate कर रहे है | जब किसी Program में कोई एक गलत Instruction एक से ज्यादा प्रकार की Errors को Generate करने में सक्षम होता है , तो इस प्रकार के Error Instruction को “Error Generator Source Instruction “ कहा जाता है |

    कई बार हमें ऐसे जरुरत पड़ती है कि एक ही मान को एक से ज्यादा Variables में Assign या Initialize  करना होता है | इस प्रकार की जरुरत को हम निम्नानुसार पूरा कर सकते है :

    int x,y,z

    x = y = z = 100;

    लेकिन यदि इन दोनों Instructions को हम एक Instruction के रूप में निम्नानुसार  Use  करें

    int x = y = z =100;

    वो ये एक गलत Instruction होगा और हमें फिर से “Undefined Symbol” की Error  प्राप्त होगी | क्योंकि यहां फिर से हम उस Variable y का मान x में Initialize करने की कोशिश कर रहे है  जिसे अभी तब Memory Allot नहीं किया गया है |

     

     

    No comments

    Post Top Ad

    ad728

    Post Bottom Ad

    ad728