प्रौद्योगिकी साझेदारी

"C Language Programming 4th Edition" नोट्स् तथा कोड अध्याय 10 स्ट्रिंग्स

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

अध्याय दश सूत्र

10.1 string literal

1 string literal(अर्थात् स्ट्रिंग् नित्यम्), यत् द्विगुण-उद्धरण-युग्मेन आवृतं मूल्यम् अस्तिवर्णक्रमः . कियन्तः वर्णाः द्विगुण-उद्धरणेषु संलग्नाः सन्ति चेदपि ते स्ट्रिंग्-लिट्रल-प्रतिनिधित्वं ददति ।

२ "क" इति स्ट्रिंग् लिटरेल्, 'क' इति च वर्णनित्यं, ये भिन्नाः सन्ति ।

३ तारः वस्तुतः अनेकैः निर्मितः अस्तिवैध वर्णाः'0' इत्यनेन समाप्तस्य वर्णानाम् एकः क्रमः ।

१०.२ तारानाम् भण्डारणम्

१ स्ट्रिंग् अभिगमःवर्णसरणिका पूर्णं कर्तुं ।परन्तु वर्णसरणौ संगृहीतम्अनिश्चितःकेवलं स्ट्रिंग् अस्ति यदा तस्य अन्तिमः तत्त्वः अस्ति’0’तदा एव तारं प्रतिनिधियति ।

२ '0' इति स्ट्रिंग् अन्त्यध्वजः अपि सूचयति यत् सः अपि व्याप्तः अस्तिएकं बाइट्स्मृतिः, परन्तु स्ट्रिंग् मध्ये न समाविष्टावास्तविकदीर्घता

३ स्ट्रिंग् आरम्भस्य एकं रूपं अनुमतम् :

char str[6]={'ह','ई','ल','ल','0','0'};

भवान् सरणीदीर्घतायाः घोषणां अपि परित्यक्तुं शक्नोति (यतोहि दीर्घता स्पष्टा अस्ति, परन्तु ध्यानं कुर्वन्तु यत् '0' लोपयितुं न शक्यते):

char str[ ]= {'ह','ई','ल','ल','0','0'};

अथवा वर्णसरणीं स्ट्रिंग् स्थिरांकेन आरभत:

char str[ ]={“नमस्ते”};

भवन्तः कुञ्चित-कङ्कणानि प्रत्यक्षतया अपि परित्यक्तुं शक्नुवन्ति:

चार स्ट्र[ ]=”नमस्ते”;

4 सदैव ध्यानं कुर्वन्तु यत् स्ट्रिंग् इत्यस्य अन्त्यपरिचयस्य संग्रहणार्थं पर्याप्तं भण्डारणस्थानं भवितुमर्हति अतः वर्णसरण्याः आकारः स्ट्रिंग् इत्यस्मिन् वास्तविकसङ्ख्यायाः अपेक्षया सर्वदा अधिकः भवति ।एकं अपि

५ द्विविधः सङ्ग्रहःपङ्क्तितः संग्रहणं कुर्वन्तु, अतः प्रणाल्याः प्रथमपङ्क्तिदीर्घता अवश्यं वक्तव्या, यदा आरम्भसूचिकाद्वारा प्रदत्तस्य तारस्य दीर्घता प्रत्येकपङ्क्तिदीर्घतायाः अपेक्षया न्यूना भवति तदा प्रणाली स्वयमेव निम्नलिखित-एककानि आवंटयति”0”

१०.३ वर्णसूचकः

1 वर्णसूचकःइदं वर्णदत्तांशं सूचयति इति सूचकचरम् अस्ति ।

२ स्ट्रिंग् लिटरेल् एव नित्यं भण्डारणक्षेत्रं प्रतिनिधियति यत्र सः संगृहीतः अस्ति ।प्रथमं सम्बोधनम् .अतः केवलं परिवर्तनं कुर्वन्तुप्रथमं पतानिर्देशनम्सूचकचरं दत्त्वा भवान् वर्णसूचकं स्ट्रिंग् प्रति सूचयितुं शक्नोति ।

३ ताराः अन्तः एव तिष्ठन्तिकेवलं पठनीयं नित्यं भण्डारणंin, अतः केवलं परिवर्तनं कर्तुं शक्यतेसूचकचरस्य मूल्यम्, सूचकचरयोः उपरि उपयोक्तुं न शक्यतेस्मृतिस्थानं सूचितम्पठनलेखनक्रियाः कुर्वन्तु।

केवलं ptr इत्यस्य मूल्यं परिवर्तयितुं शक्यते, न तु ptr द्वारा सूचितं भण्डारण-एककं, अतः *ptr='W' अवैधम् अस्ति ।

४ यदि तारं रक्षितं भवतिan array , ततः वर्णसूचकेन तत् सूचयन्तु एतत् कार्यं वैधानिकम् अस्ति । इव: