வகைப்படுத்திகள் ( Format specifiers) | எளிய தமிழில் C பகுதி 8

By | July 13, 2025

C++, பைத்தான் போன்ற கணினி மொழிகளில் நீங்கள் ஒரு மாறிக்கு மதிப்பை வழங்கிய பிறகு, அந்த மாறியின் பெயரை குறிப்பிட்டு print செயல்பாட்டின் மூலம் அச்சிடுவோம். மொழிக்கு மொழி இந்த செயல்பாட்டின் பெயர் மாறுபடும். ஆனால், பெரும்பாலும் நாம் மாறி மதிப்பின் வகையை முன்பே  வழங்கி விடுவதால், print செயல்பாட்டிற்குள் மீண்டும் வகையை வழங்க வேண்டிய தேவை இருக்காது. ஆனால், c நிரல் மொழியில் மாரியில் சேமித்து வைக்கப்பட்டிருக்கும் மதிப்பை நேரடியாக அச்சிட்டு விட முடியாது.

அச்சிடுவதற்கு முன்பாக அதன் வகையை குறிப்பிட வேண்டும். இதற்குத்தான் வகைப்படுத்தி என்பதை பயன்படுத்துகிறோம். ஆங்கிலத்தில் இது ஃபார்மேட் ஸ்பெசிஃபையர் ( FORMAT SPECIFIER) என அறியப்படுகிறது. C மொழியில் பல்வேறு விதமான வகைப்படுத்திகள் பயன்படுத்தப்படுகின்றன. ஒன்றிரண்டு அடிப்படையான வகைப்படுத்தியில் பற்றி மட்டும் இந்த கட்டுரையில் தெரிந்து கொள்வோம்.

வகைப்படுத்தி அமைப்பு

வகைப்படுத்தியை எழுதும்போது, அதற்கு முன்பாக சதவிகித குறியை இட வேண்டும். %d எனக் குறிப்பிட்டால் நாம் மாறியில் தசம மதிப்பை பயன்படுத்துகிறோம் என பொருள்படும்.%C எனக் குறிப்பிட்டால் நாம் எழுத்துக்களை அச்சிட போகிறோம் எனப் பொருள்படும். %f என்றால் நாம் புள்ளியிடப்பட்ட தசம மதிப்புகளை பயன்படுத்துகிறோம் எனப் பொருள்படும்.

நிரல்

மேலே வழங்கப்பட்டுள்ள இரண்டு நிரல்களிலும், என்னதான் நாம் முன்பே மாறியின் வகையை வழங்கியிருந்தாலும் அச்சிடும் பகுதியில் கூட நாம் நிச்சயமாக வகைப்படுத்திகளை பயன்படுத்த வேண்டும். இவ்வாறு நாம் வகைப்படுத்தி களை பயன்படுத்தாமல், நிரலை எழுதினால் மாறியில் இருக்கும் மதிப்புகள் நமக்கு திரையில் காண கிடைக்காது.

பைத்தான் போன்ற மொழிகளில் மாறியில் இருக்கும் மதிப்பை அச்சிடப்படும் தகவலுக்கு இடையே சொருகுவதற்கு “f” எனும் முறையைப் பயன்படுத்துவோம். ஆனால், வகைப்படுத்தி களை நாம் இயல்பாகவே சிமொழியில் பயன்படுத்துவதால், இதைக் கொண்டே நம்மால் எழுத்துக்களுக்கு இடையே மாறி மதிப்புகளை சொருக முடியும்.

அதற்கான நிரல் கீழே கொடுக்கப்பட்டுள்ளது.

சி மொழியில் அடிப்படையாகக் கற்றுக்கொள்ள வேண்டிய விஷயங்களில் இதுவும் ஒன்று. மற்றும் ஒரு அடிப்படை தகவலோடு குறுகிய இடைவெளியில் வந்து சந்திக்கிறேன்.

கட்டுரையாளர்:-

ஸ்ரீ காளீஸ்வரர் செ,

அறிவியல் எழுத்தாளர்,

நாகர்கோவில் – 02

தொடர்புக்கு: srikaleeswarar@myyahoo.com

Leave a Reply