스크립트를 실행하고 내 프로그램에서 기본 표준 입력 (터미널 입력)에 액세스해야합니다. 프로그램을 통해 스크립트를 열고 구문 분석하는 ./program "script"를 할 수는 있지만 파이프 또는 리디렉션에서 입력을 허용하여 POSIX 스타일로 만들고 싶습니다.파일 리디렉션을 사용하는 동안 기본 표준 입력에 액세스하는 방법은 무엇입니까?
내 프로그램이 파서이므로 ./program을 실행하고 스크립트를 입력 한 다음 stdin (예 : scanf)을 계속 사용할 수 있습니다. 하지만 ./program < 스크립트를 실행하고 stdin (scanf에서)을 계속 사용할 수 있습니다.
내 프로그램은 간체 인 파스칼 인터프리터이므로 내 스크립트에 read(x)
과 write(x)
을 실행해야합니다.
예, 숙제 (intepreter)이지만 브레인 스토밍 과정에서 의심의 여지가 나타났습니다.
음, 매일 새로운 것을 배울 것 같네요. :) 아직도, 자주하고 싶은 것처럼 보이지는 않습니다. :) –
일반적인 것은 아니지만 작년에 '더 많은'프로그램을 구현해야했습니다. 파일로부터 입력을 읽어서 stdout으로 출력하지만 스크롤을 계속하려면 키보드에서 입력을 읽어야합니다. :) –
당신은 더 많은 수락 된 파이프 된/리디렉션 된 입력을 했습니까? Btw, ttyname (0)은 나에게 stdin을 얻을 것이다. 그러나 그것이 리다이렉션 되었기 때문에 나는 터미널을 얻지 못할 것이다. 아마도 반환 된 문자열을 사용하여 표준 입력란을 찾을 수 있습니다. – Spidey