logo

הפונקציה Getchar() ב-C

בסעיף זה נלמד את הפונקציה getchar() בשפת התכנות C. א getchar() הפונקציה היא א לא סטנדרטי פונקציה שמשמעותה כבר מוגדרת ב- stdin.h קובץ כותרת כדי לקבל קלט בודד מהמשתמש. במילים אחרות, פונקציית ספריית C היא זו שמקבלת תו בודד (char unsigned) מה-stdin. עם זאת, הפונקציה getchar() דומה לפונקציה getc() אך יש הבדל קטן בין הפונקציה getchar() ו-getc() של הפונקציה שפת תכנות C . getchar() קורא תו בודד מקלט רגיל, בעוד getc() קורא תו בודד מכל זרם קלט.

הפונקציה Getchar() ב-C

תחביר

 int getchar (void); 

אין לו פרמטרים. עם זאת, הוא מחזיר את תווי הקריאה כתו לא חתום ב-int, ואם יש שגיאה בקובץ, הוא מחזיר את EOF בסוף הקובץ.

כעת אנו כותבים מספר תוכניות פונקציות getchar() כדי לקבל תווים בודדים ב-C ולהדפיס אותם באמצעות הפונקציה putchar ().

קרא תו בודד באמצעות הפונקציה getchar()

בואו נשקול תוכנית שתיקח סינגל באמצעות הפונקציה getchar() ב-C.

מחרוזת ממיר לתאריך

Program.c

 #include #include void main() { char c; printf ('
 Enter a character 
'); c = getchar(); // get a single character printf(' You have passed '); putchar(c); // print a single character using putchar getch(); } 

תְפוּקָה

 Enter a character A You have passed A 

כפי שאנו יכולים לראות בתוכנית לעיל, זה לוקח תו בודד בזמן הריצה מהמשתמש באמצעות הפונקציה getchar() . לאחר קבלת התו, הוא מדפיס את האות דרך הפונקציה putchar() .

קרא n תווים מהמשתמש באמצעות הפונקציה getchar()

בואו נשקול תוכנית לקריאת n תווים באמצעות הפונקציה getchar() ב-C.

Getchar.c

 #include #include #include int main() { char ch; printf (' Enter a character ( If we want to exit press #) 
'); while (ch != '#') /* accept the number till the user does not enter the # to exit from the loop. */ { ch = getchar(); printf (' 
 We have entered the character : '); putchar (ch); // print a single character printf ('
'); } return 0; } 

תְפוּקָה

 Enter a character ( If we want to exit.. press #) A We have entered the character: A We have entered the character: B We have entered the character: B We have entered the character: C We have entered the character: C We have entered the character: 

כפי שאנו יכולים לראות בפלט לעיל, לולאת while מקבלת תו מהמשתמש באופן רציף עד שהמשתמש לא עובר את התו #. כאן הפונקציה getchar() לוקחת תו בודד מהקלט הסטנדרטי ומקצה אותם למשתנה ch. ואילו הפונקציה putchar() מדפיסה את תו הקריאה.

קרא תו בודד באמצעות הפונקציה scanf()

בואו נשקול תוכנית לקריאת תו באמצעות פונקציית הספרייה scanf() ב-C.

פרוג.ג

פרוסת מערך java
 #include #include int main() { char ch; printf ('
 Enter the character 
'); scanf ('%c', &ch); // get a single character, numeric or words printf( ' You have entered %c', ch); /* It print a single character or first letter of the words. */ return 0; } 

תְפוּקָה

 Enter the character A You have entered A 

כפי שאנו יכולים לראות, כאשר אנו מבצעים את התוכנית לעיל, היא לוקחת תו בודד או קבוצת תווים באמצעות פונקציית הספרייה scanf() במקום הפונקציה getchar() . אבל יש הבדל קטן; פונקציה scanf() יכולה לקחת מהמשתמש יחיד או קבוצת תווים, בעוד שהפונקציה getchar() יכולה לקבל רק את התו היחיד.

כאן אנו שוב מבצעים את התוכנית לעיל, והפעם, היא מציגה את התוצאות שלהלן.

 Enter the character Apple You have entered A 

קרא את הדמויות באמצעות לולאת עשה תוך כדי

הבה נשקול תוכנית לקריאת התווים באמצעות הפונקציה do while ו-getchar() ב-C.

חוקי שקילות

Dowhile1.c

 #include #include int main() { int ch, i = 0; char str[150]; printf (' Enter the characters from the keyboard (Press Enter button to stop).
'); // use do while loop to define the condition do { ch = getchar(); // takes character, number, etc from the user str[i] = ch; // store the ch into str[i] i++; // increment loop by 1 } while (ch != '
'); // ch is not equal to '
' printf('Entered characters are %s ', str); return 0; } 

תְפוּקָה

 Enter the characters from the keyboard (Press Enter button to stop). Well b47gvb come Entered characters are Well b47gvb come 

בתוכנית לעיל, לולאת עשה בזמן מקבלת את התווים באופן רציף עד שהמשתמש עובר את להיכנס לחצן כדי לצאת מהלולאה.