2014-03-15 7 views
1

커맨드 라인 프로그램에 고급 기능을 추가하려고합니다. 'Tab'버튼을 누르면 어떤 단어가 의미하는지 알 수 있습니다 (파일의 컨텍스트에서 bash는 탭을 누르면 다음 줄에서 일치하는 파일 이름을 인쇄합니다).커맨드 라인 어시스트

다음은 제가 가지고있는 스 니펫입니다. 나는 '\ n'을 탭의 ASCII로 바꾸었지만 (작동하는지 확인하기 위해) 데이터를 표준 입력으로 보내려면 Enter 키를 눌러야합니다.

도움을 주시면 감사하겠습니다. 감사.

while (1){ 
     c = getchar() ; 
     if (isspace(c)){ 
      curLine[pos]='\0'; 
      buffer[w_count] = curLine ; 
      ++w_count; 
      pos=0; 
      curLine = calloc(10, sizeof(char)); 
      if (c == '\n') 
       break; 
      } 
      curLine[pos]=c; 
      ++pos; 
     } 
    } 

답변