vim 관련 질문드립니다.
글쓴이: chyusa1223 / 작성시간: 월, 2017/10/02 - 1:00오전
#include <stdio.h> int main() { int a=3,b=0; scanf("%d",&a); scanf("%d",&b); printf("answer = %d\n",a+b); return 0; }
위 예제를 컴파일 후 터미널에서 ./hello로 실행시킬때는 아무런 문제가 없이 실행이 됩니다.
그런데 vim에서 :!./hello로 쉘로 빠져나가지 않고 실행할 경우에는 scanf가 동작하지 않습니다.
그냥 바로 answer=3과 같이 바로 결과값이 나와버립니다.
터미널에서 동작하는걸 봐서는 소스코드나 실행상의 문제는 아닌것 같은데 도대체 무엇이 문제인지 모르겠네요.
제가 지금 사용하고 있는 에디터가 neovim인데 이 자체에 문제가 있는 걸까요?
이유가 무엇인지 , 어떻게 하면 수정할 수 있을지 궁금합니다.
가능하시면 답변 부탁드립니다. 감사합니다.
Forums:
stdin
https://github.com/neovim/neovim/issues/1496
neovim 특성상 stdin <-> tty 연결이 되지 않아서 그런 듯합니다.
터미널에서 그냥 ./hello, 아니면 false | ./hello 실행하셨을 때 결과랑 비교해보세요.
댓글 달기