C/C++ Flow Transfer Statement (Jump)

आइए C/C++ Flow Transfer Statement के बारे मे समझते हैं ।

जब भी हमे Program के Flow को Transfer करना होता हैं तब हम इन Flow Transfer Statement का उपयोग करते हैं, जैसे की हमने कोई Loop लिखा हैं ओर हम चाहते हैं की loop complete होने के पहले की loop से बाहर आना चाहे । आइए हम समझते हैं की कब कब हमे इनकी जरूरत लगती हैं ।

  • जब हमे Loop मे से बीच मे से ही बाहर आना हो ।
  • जब हमे Loop की कोई एक या एक से अधिक Cycle को bypass करना हो तब ।
  • यदि हमने कोई Function लिखा हो ओर उस Function के Complete होने से पहले ही उससे बाहर आना तो तब ।
  • main function को ही बीच मे कही पर close करना हो तब
  • किसी एक स्थान से Flow को अन्य किसी स्थान पर Transfer करना हो तब ।

अलग अलग कार्य के अनुसार हमे अलग अलग keyword का उपयोग करना होता हैं ।


break

जब हमे किस Statement को बीच मे ही Close करना हो तो हम break का उपयोग करते हैं ।

  • जब भी हमें for, while और Do….while में से Exit होना होता हैं तब हम break कमांड का उपयोग करते हैं ।
  • switch case statement से भी बहार आने के लिए भी break का उपयोग किया जाता हैं ।
#include <stdio.h>
void main()
{
    for (int i=1; i<=10; i++)
    {
        printf("\t%d,", i);
        if (i==5)
        {
            break;
        }
    }
}

यहा पर हमने देखा की एक For का loop हैं जो की 1 से 10 तक चलेगा, हमने बीच मे ही if के साथ break का उपयोग किया हैं, जैसे ही i की वैल्यू 5 होगी वैसे ही यह ब्रेक कर देगा , break करते ही for loop से बाहर आ जाएंगे ।

Output

C/C++ Flow Transfer Statement Break Output

हमारे अन्य आर्टिकल


continue

किसी भी loop statement के current cycle को bypass करने के लिए continue statement का उपयोग किया जाता हैं ।

#include <stdio.h>
void main()
{
    for (int i=1; i<=10; i++)
    {
        if (i==5)  continue ;
        printf("\t%d,", i);
    }
}
C/C++ Flow Transfer Statement Continue Output

जब भी हम Continue keyword का उपयोग करते हैं तब loop की Current Cycle Bypass हो जाती हैं । Output मे आप देख रहे होंगे की 5 print नहीं हुआ हैं

Continue के बाद जो भी Statement लिखे होंगे वह सभी bypass हो जाते हैं ।


return

रिटर्न के साथ हम Cursor का Flow तो बदल ही सकते हैं साथ मे हम इससे Value भी Return कर सकते हैं । , return statement को दो तरीके से उपयोग कर सकते हैं .

  • return : इसमें हम केवल statement लिखते हैं ऐसा करने से जो भी फंक्शन या स्टेटमेंट हैं वह वही पर क्लोज हो जाता हैं ।
  • return value : इसमें हम return के साथ वैल्यू भी return कर सकते हैं

Return Example

#include <stdio.h>
void main()
{
    printf("\nBefore Return");
    return;
    printf("\nAfter Return");
}

Output

C/C++ Flow Transfer Statement Return Output

जब हमने return keyword का उपयोग किया उसके बाद के कोई भी Statement Execute नहीं हुए ।


Return With Value Example

अब हम return keyword का उपयोग Value के साथ करेंगे ।

#include <stdio.h>
int MySquare(int a)
{
    return a*a;
}
void main()
{
    int x = 5;
    printf("\nSquare of %d is :%d", x, MySquare(x));
}

Output

C/C++ Flow Transfer Statement Return with value Example

इस Example मे हमने एक Function बनाया हैं और उस Function को main function से call किया हैं, Function मे Return keyword के साथ Value Return की हैं ।


goto

यह statement program के flow को transfer करने के काम आता हैं , वैसे यदि आप एक best practice करना चाहते हैं तो इस Statement का उपयोग नहीं करना चाहिए हैं , यदि बहुत जरुरी हो तो ही इसका उपयोग करे ।

#include <stdio.h>
void main()
{
    printf("\nFirst Line");
    goto a;
      printf("\nSecond Line");
    b:
      printf("\nThird Line");
      return;
    a:
      printf("\nFourth Line");
    goto b;
}
C/C++ Flow Transfer Statement goto Example
  • सबसे पहले First Line प्रिन्ट होगा ।
  • goto a पर आने पर Cursor Fourth Line पर चला जाएगा ।
  • उसके बाद goto b होने से cursor Third Line पर जाएगा ।
  • इस Line के बाद हमने Return keyword लगाया हैं इसलिए Main function से ही Cursor बाहर हो जाएगा ।
  • यदि हम Return का उपयोग नहीं करेंगे तो यह प्रोग्राम Infinit हो जाएगा ओर Machine Hang हो जाएगी ।
  • वैसे goto का उपयोग न करने की ही सलाह दी जाती हैं ।

आशा हैं मुझे की आपको C/C++ Flow Transfer Statement के बारे मे समझ मे आ गया होगा । फिर भी यदि कोई Doubt हो तो आप Comment कर सकते हैं ।

यह C/C++ Flow Transfer Statement Article आपको कैसा लगा जरूर बताए ।

अपना कीमती समय देने के लिए धन्यवाद ।

Add a Comment

Your email address will not be published. Required fields are marked *