Mình mới C bằng eclipse for C
dev,
chạy nó chạy scanf trước, chạy printf sau, như màn hình console, Bạn nào biết cách sửa không?
cíu Mình với!
Mình mới C bằng eclipse for C
dev,
chạy nó chạy scanf trước, chạy printf sau, như màn hình console, Bạn nào biết cách sửa không?
cíu Mình với!
Eclipse ngộ thế.
Giải pháp mình search được:
Ngắn gọn là:
Thêm dòng này
setbuf(stdout, NULL);
Hoặc
setvbuf(stdout, NULL, _IONBF, 0);
Ở đầu hàm main
int main() {
setvbuf(stdout, NULL, _IONBF, 0);
...
}
cảm ơn Bạn nhiều!!!
Không lẽ eclipse for C/C++ bị bug à?
Định xài eclipse code C++ 
Ý kiến chủ quan:
Eclipse hình như nó xài console với config riêng của nó nên bị như trên (theo như vài link khác nói). Nên có thể tắt console buffer của nó đi là được \ OvO /. Cách tắt thì mình search không ra nên đưa cái trên :))
còn cách chỉnh size thì:
https://stackoverflow.com/questions/2600653/adjusting-eclipse-console-size
Theo mình vấn đề standard output là buffer, thay vì việc khi nào có chuỗi trong standard output thì cũng in ra thì nó chỉ in ra khi gặp kí tự xuống dòng ("\n"), bị đẩy ra (fflush(stdout)) hoặc chương trình kết thúc.
Bạn có thể thay sửa code như sau:
printf(" study n: ");`
fflush(stdout);`
Hoặc
printf(" study n: \n");
Hoặc set standard output không còn buffer nữa
setbuf(stdout, NULL);
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?