제목과 마찬가지입니다. 나는 gets(buffer)
을 무한 루프에 가지고 있으며, 이는 gets(buffer)
에서 멈추고 무한 대기 상태입니다. gets(buffer)
기다려야 만 STDIN의 입력에 3 초가 걸리고, 버퍼에 문자열이 없으면 다시 컨트롤을 전달하는 등의 작업을 할 수 있습니다.
C는 언어입니다
미리 감사드립니다 !!gets()는 C에서 STDIN의 입력에 대해서만 특정 시간 만 기다려야합니까?
2
A
답변
3
표준 gets()
기능에는 시간 초과 기능이 없습니다. 표준 C에서 I/O 작업에서 시간 초과를 구현하는 방법은 select()
function입니다.
'gets'는 안전하지 않으므로'gets' 대신'fgets'을 사용하지 마십시오. 버퍼가 너무 작 으면 버퍼 오버플로가 발생합니다. – Gandaro
절대'gets'를 사용하지 마십시오. ** 절대로 ** gets를 사용하지 마십시오. –
충분히 말할 수 없기 때문에, ** 결코 전에 ** 사용하지 마십시오. **이제까지**! – Dave