इसका क्या अर्थ है?सी ... फ़ंक्शन घोषणा में "..." का क्या अर्थ है?
void message(int x, int y, ...)
मुझे समझ में नहीं आता कि क्या है ... है। क्या कोई समझा सकता है?
इसका क्या अर्थ है?सी ... फ़ंक्शन घोषणा में "..." का क्या अर्थ है?
void message(int x, int y, ...)
मुझे समझ में नहीं आता कि क्या है ... है। क्या कोई समझा सकता है?
पैरामीटर की निर्दिष्ट/परिवर्तनीय संख्या।
एक उदाहरण here से लिया:
#include <stdlib.h>
#include <stdarg.h>
#include <stdio.h>
int maxof(int, ...) ;
void f(void);
main(){
f();
exit(EXIT SUCCESS);
}
int maxof(int n args, ...){
register int i;
int max, a;
va_list ap;
va_start(ap, n args);
max = va_arg(ap, int);
for(i = 2; i <= n_args; i++) {
if((a = va_arg(ap, int)) > max)
max = a;
}
va_end(ap);
return max;
}
void f(void) {
int i = 5;
int j[256];
j[42] = 24;
printf("%d\n",maxof(3, i, j[42], 0));
}
आप अधिक विवरण here
आपका कोड और सुझाव मुझे बहुत मदद करता है। थैक्स – ambika
...
परिवर्तनीय तर्कों की सूची को दर्शाता है जिसे va_arg, va_end and va_start के माध्यम से एक्सेस किया जा सकता है।
कुछ अच्छे प्रोग्रामर यहां हैं। आप उनमें से एक हैं। बहुत बहुत धन्यवाद – ambika
पा सकते हैं यह चर है इस तरह के समारोह को संभालने के लिए आप va_list प्रकार और va_start, va_arg, और va_end कार्यों का उपयोग करने के लिए है तर्क औपचारिक पैरामीटर। वाक्य रचनात्मक संभावना से यह आपको पैरामीटर की एक चर संख्या को पास करने की अनुमति देता है (कम से कम दो, जो एक्स और वाई हैं, लेकिन इससे भी अधिक)।
... अंतिम तर्क एक सरणी के रूप में या तर्कों के एक दृश्य के रूप में पारित प्रतिनिधित्व करता है। नोट करने के लिए लायक
एक संबंधित बात यह है कि सी खाली समारोह मापदंडों में() के रूप में (...) अर्थात एक ही है, कि समारोह कोई पैरामीटर लग सकता है इसका मतलब है। आपको यह बताने के लिए (शून्य) का उपयोग करने की आवश्यकता है कि यह कोई भी नहीं लेता है। सी ++() में इसका मतलब है कि यह कोई भी नहीं लेता है, जैसा कि कोई उम्मीद करेगा। – Tronic
एक खाली पैरामीटर सूची '()' ** ** नहीं ** ** (...) 'जैसी ही चीज़ है। एक खाली पैरामीटर सूची का अर्थ है कि फ़ंक्शन एक निश्चित, लेकिन अनिर्दिष्ट, संख्याओं की संख्या लेता है। '(...) 'का अर्थ है कि यह तर्कों की एक चर संख्या लेता है (और काफी बेकार है, क्योंकि फ़ंक्शन कम से कम एक निश्चित तर्क के बिना उन तर्कों तक पहुंचने में सक्षम नहीं होगा)। – caf