C/C++ प्रोग्रामिंग भाषा में कॉमा ऑपरेटर के दो संदर्भ हैं:
- सेपरेटर के रूप में
- ऑपरेटर के रूप में - कॉमा ऑपरेटर { , } एक बाइनरी ऑपरेटर है जो पहले एक्सप्रेशन का मूल्यांकन करने के बाद उसे छोड़ देता है और फिर दूसरे एक्सप्रेशन के मान का उपयोग करता है। इस ऑपरेटर की प्राथमिकता सबसे कम होती है।
निम्नलिखित कोड पर विचार करें और आउटपुट का अनुमान लगाएं:
उदाहरण 1
#include <stdio.h>
int main(void) {
char ch = 'a', 'b', 'c';
printf("%c", ch);
return 0;
}
आउटपुट
यह एक त्रुटि देता है क्योंकि कॉमा यहां सेपरेटर के रूप में काम करता है।
prog.c: In function 'main':
prog.c:5:20: error: expected identifier or '(' before 'b'
char ch = 'a', 'b', 'c';
^~~
उदाहरण 2
#include <stdio.h>
int main(void) {
char ch;
ch = 'a','b','c';
printf("%c", ch);
return 0;
}
आउटपुट
यह a आउटपुट देता है क्योंकि कॉमा ऑपरेटर के रूप में काम करता है लेकिन इसकी प्राथमिकता असाइनमेंट ऑपरेटर से कम होती है, इसलिए आउटपुट a है।
a
उदाहरण 3
#include <stdio.h>
int f1() {
return 43;
}
int f2() {
return 123;
}
int main(void) {
int a;
a = (f1() , f2());
printf("%d", a);
return 0;
}
आउटपुट
यह 123 आउटपुट देता है क्योंकि कॉमा ऑपरेटर के रूप में काम करता है और ब्रैकेट में होने के कारण यह दूसरे एक्सप्रेशन का मूल्यांकन करता है और आउटपुट देता है।
123