Mini C 어휘분석기(Scanner)
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

Mini C 어휘분석기(Scanner)에 대한 보고서 자료입니다.

목차

1. 어휘분석기 소스코드
2. 어휘분석기 프로그램 실행화면 스크린샷

본문내용

din); // retract
}
break;
case '>': // state42
ch = getchar();
if (ch == '=') token.number = tgreate; // '>='
else { token.number = tgreat; // '>'
ungetc(ch, stdin); // retract
}
break;
case '|': // state45
ch = getchar();
if (ch == '|') token.number = tor; // '||'
else { lexicalError(3); // '|' 하나만 쓸수 없다는 에러 출력
ungetc(ch, stdin); // retract
}
break;
case '(': token.number = tlparen; break; // 특수문자 각각 대입
case ')': token.number = trparen; break;
case ',': token.number = tcomma; break;
case ';': token.number = tsemicolon; break;
case '[': token.number = tlbracket; break;
case ']': token.number = trbracket; break;
case '{': token.number = tlbrace; break;
case '}': token.number = trbrace; break;
case EOF: token.number = teof; break;
default: { // 상기 case에 해당 안될 경우 잘못된 문자로 인식, 에러출력
printf(" Current character : %c", ch);
lexicalError(4);
break;
}
} // switch end
} while (token.number == tnull);
return token;
} // end of scanner
void main()
{
tokenType a;
printf("스캐너에 문자열을 입력해주세요.\n");
for(;1;)
{
a = scanner();
if( a.number == 5 ) // 토큰이 숫자상수일때 토큰번호와 토큰값(상수수치 값)
printf("토큰 넘버 : %d, 토큰값 : %d \n", a.number, a.value.num);
else if ( a.number==4) // 토큰이 변수일때 토큰번호와 토큰값(변수의 스트링값)
{
printf("토큰 넘버 : %d, 토큰값 : %s\n", a.number, a.value.id);
}
else if( ((0 <= a.number) && (a.number <=3)) || ( (a.number >= 6) && (a.number <=39) ) )
// 토큰이 특수문자형태일때 또는 예약어 일때는 토큰의 토큰번호만을 출력 하기로 한다.
// enum 태그형은 프로그램 실행중에 열거 멤버의 이름을 알수 있는 방법이 없음
// 별도의 문자열 배열을 지정하면 토큰 심벌값을 출력 해줄수 있으나 생략 하겠음.
{
printf("토큰넘버 : %d \n", a.number);
}
else{} // lexicalerror(4)의 경우로 해줄일 없음.
}
}
--------------------------------------------------------------------------------------------------------------------------------------
실행결과 스크린 샷 1번
- 예약어, 변수, 상수, 특수문자들의 토큰을 추출해내는 모습
실행결과 스크린 샷 2번
- 각 에러 메시지와 출력과 특수문자 토큰을 추출 해내는 모습

키워드

  • 가격2,000
  • 페이지수8페이지
  • 등록일2006.12.22
  • 저작시기2006.10
  • 파일형식한글(hwp)
  • 자료번호#383777
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니