दिलचस्प पोस्ट
जावास्क्रिप्ट – स्ट्रिंग regex बैकरेफरेंस PHP – मोबाइल या डेस्कटॉप ब्राउज़र पर चलने वाले पृष्ठ की जांच करें मैं नए PostgreSQL JSON डेटाटाइप के अंदर फ़ील्ड कैसे संशोधित करूं? कैसे एक MySQL करने के लिए एक MSSQL सीटीई क्वेरी को बदलने के लिए? त्रुटि: rmagick स्थापित करने में त्रुटि: रूबी 2.2 के साथ विंडोज में एंड्रॉइड स्टूडियो: मॉड्यूल "कॉन्फ़िगरेशन संपादित करें" में दिखाई नहीं देगा डेटा पढ़ने और डेटाबेस में सम्मिलित करने के लिए phpexcel का उपयोग कैसे करें? मैं jQuery के दस्तावेज़ में फ़ंक्शन को परिभाषित क्यों नहीं कर सकता .ready ()? क्या करता है- D_XOPEN_SOURCE / क्या मतलब है? Sys.stdout.flush () विधि का उपयोग पायथन के साथ पायथन उपप्रोसेस कमांड पढ़ें: जावास्क्रिप्ट के साथ छद्म वर्ग को हॉवर करें समूहीकृत बारप्लोट करने का सरल तरीका क्लास का नाम और विधि नाम ड्रॉपडाउन सूची अनुपलब्ध है (विज़ुअल स्टूडियो सेटिंग) HTTP हेडर में "सामग्री-लंबाई" फ़ील्ड क्या है?

एक असाइनमेंट क्या वापस करता है?

एक एक्सप्रेशन i = 2 रिटर्न 2 क्यों करता है? यह नियम किस पर आधारित है?

printf("%d\n", i = 2 ); /* prints 2 */

मैं जावा डोमेन में लंबे समय व्यतीत करने के बाद सी डोमेन में हूं / सी # मेरी अज्ञानता को माफ़ कर दो

Solutions Collecting From Web of "एक असाइनमेंट क्या वापस करता है?"

यह 2 मूल्यांकन करता है क्योंकि यह मानक कैसे परिभाषित करता है सी 11 मानक से , खंड 6.5.16:

एक असाइनमेंट अभिव्यक्ति में असाइनमेंट के बाद बाएं ऑपरेंड का मूल्य होता है

यह इस तरह से चीजों को अनुमति देना है:

 a = b = c; 

(हालांकि इसमें कुछ बहस है कि क्या कोड ऐसा अच्छा है या नहीं।)

संयोग से, यह व्यवहार जावा में दोहराया जाता है (और मुझे यकीन है कि यह सी # में भी यही है)।

नियम का दायां हाथ परिचालन वापस करना है = उस चर के रूप में परिवर्तित किया गया है जो उसे सौंपा गया है।

 int a; float b; a = b = 4.5; // 4.5 is a double, it gets converted to float and stored into b // this returns a float which is converted to an int and stored in a // the whole expression returns an int 
  1. मूल्य 2 से i को असाइन करें I
  2. I चर का मूल्यांकन करें और इसे प्रदर्शित करें

सी में (लगभग) सभी भावों में 2 चीजें हैं
1) एक मूल्य
2) एक साइड इफेक्ट

अभिव्यक्ति का मूल्य

 2 

2 ; इसका पक्ष प्रभाव "कोई नहीं" है;

अभिव्यक्ति का मूल्य

 i = 2 

2 ; इसकी साइड इफेक्ट " i को 2 में नामित ऑब्जेक्ट में मान बदल रहा है";

यह सबसे पहले अभिव्यक्ति पर विचार करता है तो बाईं ओर वाला चर प्रिंट करता है।

उदाहरण:

 int x,y=10,z=5; printf("%d\n", x=y+z ); // firstly it calculates value of (y+z) secondly puts it in x thirdly prints x 

ध्यान दें:

x++ पोस्टफिक्स है और ++x उपसर्ग है इसलिए:

 int x=4 , y=8 ; printf("%d\n", x++ ); // prints 4 printf("%d\n", x ); // prints 5 printf("%d\n", ++y ); // prints 9