예 :
User input: abc^[[Dd
Text: abd
User input: asc
Read bytes: 7
#0: 97
#1: 98
#2: 99
#3: 27
#4: 91
#5: 68
#6: 100
나는 A, B, C, 다음 왼쪽 화살표 D를 입력. "텍스트 :"처음 세 개의 문자를 쓴 (cout) 다음 포인터를 왼쪽으로 설정하고 c를 덮어 씁니다. "asc"는 길이 (mystrvar.size())와 ascii 값을 인쇄하는 간단한 함수입니다.
"stty -ctlecho"(시스템 (...))를 호출 할 때 왼쪽 화살표 키를 사용할 수 있지만 입력 한 내용에만 국한되지 않습니다. "사용자 입력 :"을 덮어 쓸 수 있습니다. 제어 코드는 여전히 내 프로그램으로 전송됩니다.
이것은 Windows에서는 발생하지 않습니다. 일반적으로 화살표 키 (기록의 위/아래)를 사용할 수 있습니다.
여기에 무슨 문제가 있습니까?
편집 : 나는 주로 lxterminal, 터미널, xterm 등, konsole 바로, 그놈 터미널 (터미널) 또는 bash는, KSH, tcsh가 (쉘 등의 차이가있는 것 같지 않습니다 페도라 15을 사용하고 있습니다).
그래서 어떻게 든 터미널을 구성해야합니까? 내가 어떻게 그럴 수 있니? – basic6
@ basic6'rlwrap'은'readline' 기능을 가능하게하는 간단한 도구입니다. 어쩌면 당신의 플랫폼에서 사용할 수 있습니다. –
@ basic6 : 내가 사용하는 단말기가 무엇인지조차 알지 못하기 때문에, 나는 조금이라도 생각하지 못했습니다. 그것은 어쨌든 추가적인 질문이 될 것입니다. 그리고 아마도 SO에 있지 않고 아마도 터미널의 고급 설명서를 읽은 후에야 가능할 것입니다. – PlasmaHH