답변:
예. 그것은 ^D
실제로 와 관련 이 있습니다 : 그것은 단지 현재 read(2)
통화를 중단합니다 .
프로그램이 작동 int rdbytes = read(fd, buffer, sizeof buffer);
하고 그 ^D
사이 를 누르면 read()
버퍼에서 현재 읽은 바이트와 함께 숫자를 반환합니다. 라인 종료에서도 마찬가지입니다. \n
끝은 항상 전달된다.
따라서 ^D
줄의 시작 부분이나 그다음에 a 만 리턴 ^D
하여 원하는 효과를 가지며 EOF를 신호합니다.read()
0
read()
return 을 가질 것 0
입니다.
\n
.. 포함). 그러나^D
연속으로 두 번 누르고 최종 줄 바꿈 문자를 생성하지 않고 EOF 조건을 유발할 수 있습니다 (Enter 키를 누르기 전에^D
).