Basics
switch & Loop Control
break, continue
💡 switch ek vending machine jaisa hai — number dabao, sahi slot khulta hai. break/continue loops ke andar traffic signals jaise hain — break ruk jao, continue agla round shuru karo.
switch, break, continue sab C jaise hi hain C++ mein. C++17 mein switch bhi "if with initializer" jaisa feature support karta hai. Modern C++ (C++17+) mein [[fallthrough]] attribute use kiya jaata hai jab intentionally ek case se doosre case mein "fall through" karna ho (compiler warning avoid karne ke liye).
int day = 3;
switch (day) {
case 1:
cout << "Monday" << endl;
break;
case 2:
case 3:
cout << "Tuesday ya Wednesday" << endl; // ye chalega
break;
default:
cout << "Kuch aur din" << endl;
}
for (int i = 0; i < 5; i++) {
if (i == 2) continue; // 2 skip karo
if (i == 4) break; // 4 par ruk jao
cout << i << " "; // 0 1 3
}🎛️
switch ek vending machine jaisa hai — number dabao, sahi slot khulta hai. break/continue loops ke andar traffic signals jaise hain — break ruk jao, continue agla round shuru karo.
1 / 2
⚡ Quick Recap
- switch/break/continue C jaise hi hain
- Multiple cases ek saath handle kar sakte ho (fallthrough)
- C++17: [[fallthrough]] attribute intentional fallthrough ke liye
Is page mein (1 subtopics)
switch tab better hai jab ek hi variable ko multiple discrete values se compare karna ho (fast jump table ban sakta hai compiler ke through). if-else chain tab zaroori hai jab conditions complex hon (ranges, multiple variables, logical combinations).
// switch — ek variable, discrete values:
switch (grade) {
case 'A': cout << "Excellent"; break;
case 'B': cout << "Good"; break;
}
// if-else — ranges/complex conditions:
if (marks >= 90) cout << "A";
else if (marks >= 75) cout << "B";Tip: switch sirf integer-like types (int, char, enum) ke saath kaam karta hai — strings ya floats ke saath switch use nahi kar sakte, wahan if-else chain zaroori hai.