সি প্রোগ্রামিং ভাষায় ক্যারেক্টার পড়া এবং লেখার ফাংশনগুলো নিচে দেওয়া হল:
কনসোল I/O-র সবচেয়ে সহজ ফাংশনগুলো হল getche(), যা কিবোর্ড থেকে একটি ক্যারেক্টার পড়ে, এবং putchar(), যা স্ক্রিনে একটি ক্যারেক্টার প্রিন্ট করে।
getche() ফাংশন একটি কী প্রেস হওয়া পর্যন্ত অপেক্ষা করে এবং তারপর এর মান রিটার্ন করে। প্রেস করা কী স্বয়ংক্রিয়ভাবে স্ক্রিনে ইকো হয়।
putchar() ফাংশন তার ক্যারেক্টার আর্গুমেন্টকে বর্তমান কারসর পজিশনে স্ক্রিনে লেখে।
getche() এবং putchar() এর ডিক্লেরেশন:
int getche (void); int putchar (int c);
getche() এবং putchar() এর হেডার ফাইল CONIO.H-তে থাকে।
উদাহরণ
নিচে একটি উদাহরণ দেওয়া হল যা কিবোর্ড থেকে ক্যারেক্টার পড়ে তাদের রিভার্স কেসে প্রিন্ট করে। অর্থাৎ, আপারকেস লোয়ারকেসে এবং লোয়ারকেস আপারকেসে প্রিন্ট হবে।
পিরিয়ড (.) টাইপ করলে প্রোগ্রাম বন্ধ হয়। CTYPE.H হেডার ফাইল islower() লাইব্রেরি ফাংশনের জন্য দরকার, যা আর্গুমেন্টটি লোয়ারকেস হলে true রিটার্ন করে।
ক্যারেক্টার পড়া এবং লেখার সি প্রোগ্রাম:
# include <stdio.h> # include <conio.h> # include <ctype.h> main(void){ char ch; printf ("enter chars, enter a period to stop\n"); do{ ch = getche (); if ( islower (ch) ) putchar (toupper (ch)); else putchar (tolower (ch)); } while (ch != '.'); /* পিরিয়ড দিয়ে বন্ধ করা */ return 0; }
আউটপুট
enter chars, enter a period to stop tTuUtToOrRiIaAlLsS..
getche()-র উপর দুটি গুরুত্বপূর্ণ ভেরিয়েশন রয়েছে:
প্রথমটি:
getchar()-এর সমস্যা হল এটি ক্যারেজ রিটার্ন ইনপুট না হওয়া পর্যন্ত ইনপুট বাফার করে রাখে।
getchar() ফাংশন STDIO.H হেডার ফাইল ব্যবহার করে।
দ্বিতীয়টি:
getch() হল getche()র আরও একটি útil ভেরিয়েশন, যা ঠিক getche()র মতো কাজ করে বাদে টাইপ করা ক্যারেক্টারটি স্ক্রিনে ইকো হয়না। এটি CONIO.H হেডার ব্যবহার করে।