Zig Academy · पाठ

Strings []const u8 होते हैं

Zig strings byte slices क्यों होते हैं।

पाठ 1, कुल 4 में से13 चरण

Strings []const u8 होते हैं, CoddyKit पर Zig Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Zig Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Zig Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

कोई स्ट्रिंग प्रकार नहीं

Zig में स्ट्रिंग के लिए कोई अलग प्रकार नहीं है। पाठ वास्तव में बाइट्स का एक स्लाइस होता है, इसलिए आप ऐरे के लिए पहले से ज्ञात उन्हीं साधनों का फिर से उपयोग करते हैं। 📦

यह केवल बाइट्स हैं

Zig की स्ट्रिंग का प्रकार []const u8 है: 8-बिट बाइट्स की एक श्रेणी पर केवल-पठन विंडो। प्रत्येक बाइट 0 से 255 तक का एक अंक रखती है।

const greeting: []const u8 = "hello";

const क्यों

स्ट्रिंग लिटरल केवल-पठन मेमोरी में रहते हैं, इसलिए उनका प्रकार []const u8 होता है। const का अर्थ है कि आप बाइट्स पढ़ सकते हैं, लेकिन इस स्लाइस के माध्यम से कभी लिख नहीं सकते।

u8 एक बाइट है

तत्व प्रकार u8 एक अहस्ताक्षरित 8-बिट पूर्णांक है। पाठ को u8 के रूप में लेना Zig को स्पष्ट बनाता है: स्ट्रिंग कच्ची बाइट्स है, कोई जादुई अक्षर नहीं।

स्लाइस की एक लंबाई होती है

स्लाइस में पॉइंटर और लंबाई दोनों होते हैं, इसलिए स्ट्रिंग अपना आकार स्वयं जानती है। आपको अलग लंबाई चर या टर्मिनेटर की आवश्यकता कभी नहीं होती।

const name = "Zig";
// name.len == 3

परंपरा के अनुसार UTF-8

Zig की स्रोत फ़ाइलें UTF-8 होती हैं, इसलिए लिटरल पाठ को UTF-8 बाइट्स के रूप में संग्रहीत करते हैं। एक इमोजी या उच्चारण-चिह्न वाला अक्षर एक बाइट के बजाय कई बाइट ले सकता है।

लंबाई बाइट गिनती है

क्योंकि पाठ बाइट्स से बना है, .len अक्षरों की संख्या नहीं, बल्कि बाइट्स की संख्या लौटाता है। साधारण ASCII में दोनों संख्याएँ बिल्कुल समान होती हैं।

const s = "abc";
std.debug.print("{}", .{s.len}); // 3

इंडेक्स एक बाइट लौटाता है

स्ट्रिंग को इंडेक्स करने पर आपको किसी अक्षर की वस्तु नहीं, बल्कि एक अकेला u8 बाइट मान मिलता है। ASCII के लिए वह बाइट अक्षर का कोड होता है।

const s = "AB";
const first = s[0]; // 65, the A

नल टर्मिनेटर की आवश्यकता नहीं

C के विपरीत, Zig स्लाइस अपने अंत को चिह्नित करने के लिए अंतिम शून्य बाइट पर निर्भर नहीं करता। संग्रहीत लंबाई ही कोड को बता देती है कि पाठ कहाँ समाप्त होता है।

स्ट्रिंग प्रिंट करना

पाठ प्रिंट करने के लिए {s} फ़ॉर्मैट विनिर्देशक का उपयोग कीजिए। यह Zig को बाइट्स को संख्याओं के बजाय स्ट्रिंग के रूप में दिखाने के लिए कहता है।

std.debug.print("{s}\n", .{"hello"});

परिवर्तनशील बाइट्स के लिए []u8 चाहिए

लिखने योग्य []u8 स्लाइस पाने के लिए const हटाइए। फिर आप बाइट्स को उसी स्थान पर बदल सकते हैं, बशर्ते वे आपके स्वामित्व वाली मेमोरी में हों।

त्वरित जाँच

Zig स्ट्रिंग लिटरल के पीछे मौजूद वास्तविक प्रकार के बारे में सोचिए।

पुनरावलोकन

आपने सीखा कि Zig का पाठ केवल []const u8 है: लंबाई वाली केवल-पठन बाइट्स, जो परंपरा के अनुसार UTF-8 होती हैं और बाइट्स में इंडेक्स तथा मापी जाती हैं। 🎯

शुरुआत निःशुल्क

एआई शिक्षक के साथ Zig सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “Strings []const u8 होते हैं” पाठ निःशुल्क है?

हाँ—“Strings []const u8 होते हैं” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Zig Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Zig Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“Strings []const u8 होते हैं” में मैं क्या सीखूँगा?

Zig strings byte slices क्यों होते हैं। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Zig Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Zig Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Zig Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“Strings []const u8 होते हैं” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Zig Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Zig Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Strings []const u8 होते हैं
  2. String Literals और Escapes
  3. Bytes की तुलना और खोज
  4. std.fmt से Text का Formatting
← Zig Academy पर वापस जाएँ