פרטי: rewind(stdin) ניקוי מאגר לוח מקשים

כתב ויתור על תוכן KB שהוצא משימוש

מאמר זה נכתב על מוצרים ש- Microsoft כבר לא תומכת בהם. לכן, מאמר זה מוצע "כפי שהוא" והוא לא יעודכן עוד.

סיכום


כדי לנקות מאגר לוח המקשים ב- Microsoft C להשתמש rewind() פונקציה עם הזרם STDIN, שהוא המשויך במקלדת כברירת מחדל. Fflush() פונקציה ניקוי המאגרים המשתמשות תוכניות C עבור רמת זרם קלט/פלט. היא אינה מנקה את המאגר התקן. הבא הוא דוגמה המציגה מה קורה כאשר המאגר לוח המקשים לא נקיה, ולאחר מכן כיצד לנקות אותה:

הקוד לדוגמה

/* Compile options needed: none*/ 

#include <stdio.h>

void main(void)
{
int ch ;

puts( "Input two or more chars. One is read now." );
ch = getchar();
putchar( ch );
putchar( '\n' );

puts( "The next char is taken from stdin." );
ch = getchar( );
putchar( ch );
putchar( '\n' );

rewind( stdin );
puts( "Input two or more chars. One is read now." );
ch = getchar();
putchar( ch );
putchar( '\n' );

rewind( stdin );
puts( "You must enter another char because of the rewind(stdin)" );
ch = getchar( );
putchar( ch );
putchar( '\n' );
}
מאפיינים:

מזהה פריט: 41159 - סקירה אחרונה: 17 בינו׳ 2017 - תיקון: 1

משוב