c++ - False "value computed is not used" warning -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 3 जवाब

मैं कुछ बदसूरत बनाए रख रहा हूँ निम्नलिखित फ़ंक्शन के साथ विरासत कोड और मैं

  चेतावनी प्राप्त कर रहा हूं: नीचे दिए गए टिप्पणियों द्वारा चिह्नित पंक्तियों के लिए गणना की गई मूल्य  

नहीं है:

<प्री> शून्य ReadKeyValuePipe (char * बफर, char * key, char * value) {char * pos; Char key_str [1024]; Char * val = value; sprintf (key_str, "% s:", कुंजी); अगर ((pos = strstr (बफर, कुंजी))) {pos + = strlen (key_str); जबकि (* pos & amp; * pos! = '|' *) {* Val = * pos; * वैल ++; // यह वास्तव में प्रयोग किया जाता है * pos ++; // तो यह है} * val = 0; }}

जब मैं उन पंक्तियों को निकालता हूं, तो कोड टूट जाता है जो समझ में आता है क्योंकि वे मार्करों को बढ़ते दिखते हैं

मैं संकलक को यह समझने के लिए कैसे प्राप्त करूं कि ये गणना वास्तव में प्रयोग की जाती है?

<पी > आप val और pos को हटा रहे हैं और फिर उन्हें बढ़ाना चाहते हैं, लेकिन आप dereferencing के परिणाम का कभी भी उपयोग नहीं करते हैं आप उन लाइनों को केवल इसके साथ बदल सकते हैं:

  * val = * pos; ++ वैल; ++ स्थिति;  

या शायद, मूल रूप से यह कोड किसी से पहले "तय किया गया" था:

  * val ++ = * pos ++;  

Comments

Popular posts from this blog

mysql - How to enter php data into a html multiple select box -

java - Can't add JTree to JPanel of a JInternalFrame -

c++ - Cassandra datastax cpp driver - avoiding unnecessary copies -