मुझे स्ट्रिंग ToLiteral (स्ट्रिंग इनपुट)this post से फ़ंक्शन की आवश्यकता है। इस तरह की है किसी स्ट्रिंग में वर्णों को उनके भागने के दृश्यों में कनवर्ट करें
char *literal = to_literal("asdf\r\n");
उपज हैं शाब्दिक ==> "asdf \\ r \\ n"।
मैंने चारों ओर गुगल किया है, लेकिन कुछ भी नहीं ढूंढ पाया (अनुमान है कि मुझे गलत शर्तों का उपयोग करना होगा)। हालांकि, मुझे लगता है कि इस कार्यक्षमता वाला एक पुस्तकालय कहीं बाहर होना चाहिए ...
इंटरस्टेस्टिंग उत्तरों के लिए धन्यवाद। गुगलिंग "सी स्ट्रिंग एस्केप फ़ंक्शन" और भी उदाहरण प्राप्त करने की कुंजी प्रतीत होता है और जीएलआईबी g_strescape() प्रदान करता है जो मुझे बिल्कुल वही लगता है जो मुझे चाहिए।
"स्ट्रिंग शाब्दिक" यहां उपयोग करने का सही वाक्यांश नहीं है। आप जो चाहते हैं वह एक ऐसा फ़ंक्शन है जो स्ट्रिंग को बदलता है जैसे कि सी कैप्चर अनुक्रम वाले वर्णों को उन अनुक्रमों के साथ प्रतिस्थापित किया जाता है। –
'literal ==" asdf \ r \ n "' कभी सच नहीं होगा। मुझे लगता है कि आपका मतलब है 'strcmp (शाब्दिक, "asdf \\ r \\ n") == 0'। – jamesdlin
सं। लिटल == "asdf \\ r \\ n" to_literal "asdf \ r \ n" से "asdf \\ r \\ n" में परिवर्तित हो जाएगा। हालांकि, उत्तर से, मैंने सीखा है कि एक बेहतर फ़ंक्शन नाम (सी में) ** char * escape (char *) ** होगा। –