คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 1
พวก stdin, stdout, stderr เป็น global variable อยู่ใน standard library
เป็น FILE * ประเภทหนึ่ง หน้าตาประมาณนี้
FILE *stdin, *stdout, *stderr;
FILE * เป็นพวกที่มี buffer หรือ cache เวลาเขียนบางทีจะเขียนลง buffer ไว้ก่อนเพื่อความเร็ว
คือยังไม่เขียนไปที่ file หรือ stream จริง
บางทีเราไม่ชอบเพราะมองไม่เห็นที่จอ หรือเขียนใส่ file ไปแล้วทำไมไม่มีข้อมูล
ถ้าอยากให้เอาข้อมูลที่ buffer ไว้ไปเขียนจริงเลย ก็ใช้ fflush() ครับ
http://pubs.opengroup.org/onlinepubs/009695399/functions/fflush.html
เป็น FILE * ประเภทหนึ่ง หน้าตาประมาณนี้
FILE *stdin, *stdout, *stderr;
FILE * เป็นพวกที่มี buffer หรือ cache เวลาเขียนบางทีจะเขียนลง buffer ไว้ก่อนเพื่อความเร็ว
คือยังไม่เขียนไปที่ file หรือ stream จริง
บางทีเราไม่ชอบเพราะมองไม่เห็นที่จอ หรือเขียนใส่ file ไปแล้วทำไมไม่มีข้อมูล
ถ้าอยากให้เอาข้อมูลที่ buffer ไว้ไปเขียนจริงเลย ก็ใช้ fflush() ครับ
http://pubs.opengroup.org/onlinepubs/009695399/functions/fflush.html
แสดงความคิดเห็น
คำสั่ง fflush (stdout) ; ในภาษาซีใช้ทำอะไรครับ
ขอบคุณมากครับ