स्ट्रिंग लिटरल कैरेक्टर्स का एक क्रम है, जो शून्य (null) से समाप्त होता है। उदाहरण के लिए,
char *str = "hi, hello"; /* स्ट्रिंग लिटरल */
स्ट्रिंग लिटरल्स का उपयोग ऐरे को इनिशियलाइज़ करने के लिए किया जाता है।
char a1[] = "xyz"; /* a1 char[4] है जिसमें {'x','y','z','\0'} होता है */
char a2[4] = "xyz"; /* a1 के समान */
char a3[3] = "xyz"; /* a3 char[3] है जिसमें {'x','y','z'} होता है, '\0' गायब है */
स्ट्रिंग लिटरल्स मॉडिफाई करने योग्य नहीं हैं; यदि आप उनके मानों को बदलने का प्रयास करते हैं, तो यह अपरिभाषित व्यवहार की ओर ले जाता है।
char* s = "welcome"; s[0] = 'W'; /* अपरिभाषित व्यवहार */
स्ट्रिंग लिटरल्स को हमेशा const का उपयोग करके दर्शाने का प्रयास करें।
char const* s1 = "welcome"; s1[0] = 'W'; /* कंपाइलर त्रुटि! */
स्ट्रिंग लिटरल्स को कैरेक्टर कॉन्स्टेंट भी कहा जाता है, जो विभिन्न कैरेक्टर सेट्स को सपोर्ट करते हैं।
/* सामान्य स्ट्रिंग लिटरल, प्रकार char[] */ char* s1 = "abc"; /* UTF-8 स्ट्रिंग लिटरल, प्रकार char[] */ char* s3 = u8"abc"; /* 16-बिट वाइड स्ट्रिंग लिटरल, प्रकार char16_t[] */ char16_t* s4 = u"abc"; /* 32-बिट वाइड स्ट्रिंग लिटरल, प्रकार char32_t[] */ char32_t* s5 = U"abc";