프로그래밍 공부한지 한달차이고 1회완독이라서 질문이 병신같아도 이해좀 해줘

취미로하는거긴 한데

c++로 넘어가기 전에 다 끝낸 기념으로다가 게임이든 뭐든 긴 프로그램 하나 짜보려고 해

 

게임같은거 보면 엔터키 안누르고 그냥 명령 넣잖아 뭐 a는 공격 s는 점프 뭐 이렇게

그런데 c는 다 콘솔에다 숫자 문자 넣고 엔터 눌러야 되잖아

그래서 엔터를 누르지 않고도 명령을 내릴수 있는 방법을 알고싶어

 

 

 

그리고 파일/콘솔 출력할때 명령에 따라서 버퍼에서 데이터가 나가는게 아닌지도 궁금해

버퍼가 비워지는 시점이 시스템마다 다르기 때문에 fflush를 쓴다고 했는데

예를들어

FILE * fp=fopen("asd.txt", "rt");

fputs("프갤 \n", fp)

이렇게 하면 시스템이 아무리 다르다고 해도 2번째줄에서 버퍼 비우고 파일로 데이터가 출력되는거 아냐?

 

어차피 명령하면 비워지는거는 매한가지 아닌가?

그런데 왜 굳이 fflush 같이 출력버퍼를 비우는 함수를 쓰는지 이해가 안가네

fflush함수를 써야되는 특별한 상황같은거나 예제같은 거 그리고 그 이유 정도 알려주면 정말정말정말정말x1000 감사할게