Im viết chương trình đọc đầu vào thông qua stdin hay không, vì vậy tôi có sự đối chiếu sau đây.Làm cách nào để kiểm tra xem chương trình của tôi có dữ liệu được truyền vào trong số
FILE *fp=stdin;
Nhưng điều này chỉ bị treo nếu người dùng đã không cấp nước tập trung bất cứ điều gì vào chương trình, làm thế nào tôi có thể kiểm tra nếu người dùng đang thực sự đường ống dữ liệu vào chương trình của tôi như
gunzip -c file.gz |./a.out #should work
./a.out #should exit program with nice msg.
nhờ
Đối với hồ sơ, chương trình không phải là treo; nó chỉ đơn giản là chờ đợi cho đầu vào. Nếu bạn gửi một EOF (Ctrl-D trên hầu hết các nền tảng), nó được hiểu là đầu vào đã kết thúc sớm. – greyfade