나는 다음과 같은 프로그램을 실행하면 :감지 키를 눌러 사용 getchar가()
int main()
{
getchar();
return 0;
}
을 그리고 내가 ^[[A
를 얻을 콘솔에 (위쪽 화살표) ↑ 같은 화살표 키 중 하나를 누르십시오. 나는 이것이 무엇을 의미하는지 알고 싶다. 구체적으로, 나는 무엇을 의미하는지 알고 싶다 ^[
.
나는 다음과 같은 프로그램을 실행하면 :감지 키를 눌러 사용 getchar가()
int main()
{
getchar();
return 0;
}
을 그리고 내가 ^[[A
를 얻을 콘솔에 (위쪽 화살표) ↑ 같은 화살표 키 중 하나를 누르십시오. 나는 이것이 무엇을 의미하는지 알고 싶다. 구체적으로, 나는 무엇을 의미하는지 알고 싶다 ^[
.
다른 문자 앞에있는 캐럿 문자는 제어 문자 (코드 포인트가 0에서 31 사이의 문자 중 하나)의 이스케이프 시퀀스입니다.^[는 ESC라는 이스케이프 문자이며 대개 사용자 터미널의 이스케이프 시퀀스를 도입합니다. 위쪽 화살표를 칠 때 키보드에서 보내는 내용입니다.
^
은 Ctrl 키의 약식 표기입니다. 그런 다음 ^[
은 ESC
의 경우 terminal escape code이며 이스케이프 문자입니다.
그러나 keyboartd가 스캔 코드의 일부인 이유는 무엇입니까? –
위쪽 화살표의 ASCII 코드가 없습니다. ASCII 코드가 연결되어 있지 않은 이스케이프 시퀀스 키가 변환되는 것을 설명하는 ANSI 표준이 있습니다. 이것은 또한 ↑가^[[A. – fuz