एक स्ट्रिंग अक्षर शून्य से समाप्त वर्णों का अनुक्रम है। उदाहरण के लिए,
Char * str = "hi, hello"; /* string literal */
स्ट्रिंग अक्षर का उपयोग सरणियों को प्रारंभ करने के लिए किया जाता है।
char a1[] = "xyz"; /* a1 is char[4] holding {'x','y','z','\0'} */ char a2[4] = "xyz"; /* same as a1 */ char a3[3] = "xyz"; /* a1 is char[3] holding {'x,'y','z'}, missing the '\0' */नहीं है
यदि आप उनके मूल्यों को बदलने की कोशिश करते हैं, तो स्ट्रिंग अक्षर संशोधित नहीं होते हैं, जिससे अपरिभाषित व्यवहार होता है।
char* s = "welcome"; s[0] = 'W'; /* undefined behaviour */
हमेशा कॉन्स का उपयोग करके स्ट्रिंग अक्षर को इस तरह से निरूपित करने का प्रयास करें।
char const* s1 = "welcome"; s1[0] = 'W'; /* compiler error! */
स्ट्रिंग अक्षर को वर्ण स्थिरांक भी कहा जाता है, विभिन्न वर्ण सेटों का समर्थन करते हैं।
/* normal string literal, of type char[] */ char* s1 = "abc"; /* UTF-8 string literal, of type char[] */ char* s3 = u8"abc"; /* 16-bit wide string literal, of type char16x[] */ char16x* s4 = u"abc"; /* 32-bit wide string literal, of type char32x[] */ char32x* s5 = U"abc";