c - Why am i getting this warning in "if (fd=fopen(fileName,"r") == NULL)"? -
  फ़ाइल * fd; अगर (एफडी = एफओपीएन (फाइलनाम, "आर") == नल) {printf ("फ़ाइल खोलने में असफल"); बाहर निकलने के (1); }   यह एक कोड स्निपेट है I जब मैं इसे जीसीसी के साथ संकलित करता हूं, तो मुझे निम्नलिखित चेतावनी मिलती है: -
  चेतावनी: असाइनमेंट एक कलाकार के बिना पूर्णांक से सूचक बनाता है   जब मैं एफडी = एफओपीएएन (एजीआर [2], "आर") ब्रैकेट्स के भीतर, समस्या हल हो जाती है ..
मैं समझ नहीं पा रहा / रही हूँ जहां मैं सूचक को पूर्णांक परिवर्तित कर रहा हूँ जब ब्रैकेट नहीं डाले जाते।
 ऑपरेटर प्राथमिकता नियमों के कारण स्थिति को परिभाषित किया जाता है  एफडी = (एफओपीएन (फाइलनाम, "आर") == नल) ।  ==  का परिणाम पूर्णांक है,  fd  एक संकेतक है, इस प्रकार त्रुटि संदेश। 
अपने कोड के "विस्तारित" संस्करण पर विचार करें: < / P>
  फ़ाइल * fd; Int ठीक है; Fd = fopen (फ़ाइलनाम, "आर"); ठीक है = एफडी == नल; // ...    क्या आप उम्मीद करते हैं कि पिछली पंक्ति को  (ok = fd) == NULL  के रूप में समझाया जाए, या  ok = (fd == नल) ? 
Comments
Post a Comment