디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

렉스 다룰줄 아는형들 급한데 헬프점;;

ㅈㅈㅈㅈ(118.47) 2011.10.05 21:18:33
조회 34 추천 0 댓글 0

%{
#include <string.h>
int numIdentifier=0; //count identifier variable
int flag=1;
struct symbolTable{
char name[100];
}symtab[100];
int i=0;
%}
/////Token/////
TPROGRAM "program"
TMAIN "main"
TPROC "proc"
TFUNC "func"
TRETURNS "returns"
TVAR "var"
TINT "int"
TLONG "long"
TIF "if"
TTHEN "then"
TELSE "else"
TWHILE "while"
TFOR "for"
TTO "to"
TCALL "call"
TRETURN "return"
TBEGIN "begin"
TEND "end"

TASS "="
TAND "&"
TOR "|"
TNOT "!"
TLT "<"
TLE "<="
TGT ">"
TGE ">="
TNE "!="
TPLUS "+"
TMINUS "-"
TMUL "*"
TDIV "/"
TWORD [a-zA-Z][a-zA-Z0-9]*
TNUMBER [1-9]*[0-9]+

/////정의부분/////
%s CMT
%%
"/*" BEGIN CMT;
< CMT>"*/" BEGIN 0;
< CMT>. ;
< CMT>{TWORD} ;
< CMT>{TNUMBER} ;
< CMT>\\n ;


/////comment remove/////

{TPROGRAM} {printf("TPROGRAM\\n");}
{TMAIN} {printf("TMAIN\\n");}
{TPROC} {printf("TPROC\\n");}
{TFUNC} {printf("TFUNC\\n");}
{TRETURNS} {printf("TRETURNS\\n");}
{TVAR} {printf("TVAR\\n");}
{TINT} {printf("TINT\\n");}
{TLONG} {printf("TLONG\\n");}
{TIF} {printf("TIF\\n");}
{TTHEN} {printf("TTHEN\\n");}
{TELSE} {printf("TELSE\\n");}
{TWHILE} {printf("TWHILE\\n");}
{TFOR} {printf("TFOR\\n");}
{TTO} {printf("TTO\\n");}
{TCALL} {printf("TCALL\\n");}
{TRETURN} {printf("TRETURN\\n");}
{TBEGIN} {printf("TBEGIN\\n");}
{TEND} {printf("TEND\\n");}

{TASS} {printf("TASS\\n");}
{TAND} {printf("TAND\\n");}
{TOR} {printf("TOR\\n");}
{TNOT} {printf("TNOT\\n");}
{TLT} {printf("TLT\\n");}
{TLE} {printf("TLE\\n");}
{TGT} {printf("TGT\\n");}
{TGE} {printf("TGE\\n");}
{TNE} {printf("TNE\\n");}
{TPLUS} {printf("TPLUS\\n");}
{TMINUS} {printf("TMINUS\\n");}
{TMUL} {printf("TMUL\\n");}
{TDIV} {printf("TDIV\\n");}
{TNUMBER} ;
{TWORD} {
for(i =0;i<numIdentifier;i++)
{
if(!strcmp(symtab[i].name,yytext))
{
flag=0;
break;
}
else
flag=1;
}
if(flag)
{
strcpy(symtab[numIdentifier].name,yytext);
numIdentifier++;
}

}
";" ECHO;
":" ECHO;
"(" ECHO;
")" ECHO;
"," ECHO;
"." ECHO;
. ;

//규칙부분
%%
main(){
yylex();
printf("number of Identifier is %d\\n",numIdentifier);
}

이번에 교수가 내준 과제인데 이게 과제야..

인식된 어휘에 대한 토큰 이름을 출력한다. 토큰이름은 강의노트에 정의되어 있음.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p>

그리고 프로그램에서 사용한 식별자의 수를 출력한다. 같은 식별자가 여러 번 사용되는 경우 한 개로 인식

문제는 하나도 가르쳐주지도 않고 하라는데..
뭔말인지 하나도 모르겠어;
선배한테 모범답안을 하나 받았는데 이 위에 소스고..
이 위의 소스를 교수님이 봤을때 전혀 다른걸로 생각하게끔 바꿔줄수있음..?;
물론 답이 다르면 안되고 ;ㅜ
아...살려주세여..

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 현역으로 군대 안 간게 의아한 스타는? 운영자 25/06/30 - -
AD 휴대폰 바꿀까? 특가 구매 찬스! 운영자 25/07/02 - -
412997 c언어로 숫자 따로 부르는 방법? [18] ㄴㅇㄹ(61.74) 14.03.17 296 0
412996 자기집이 아파트다. 그러면 버리는 가구나 가전제품 무조건 팔아라. [4] 재활용(58.225) 14.03.17 197 0
412994 무경력코더 뭐냐 ㅡ,.ㅡ 허세갑(59.24) 14.03.17 94 0
412993 dd 보니까 for문에서 a++ a--밖에 안되냐물어보던 좆고딩이네 ^^ [1] 멍청잼(203.246) 14.03.17 102 0
412992 파일 형식 질문 [3] 갓삼사갤로그로 이동합니다. 14.03.17 77 0
412990 건축공학에서 설계도 보면 까이냐???? [2] ㅇㅇ(117.111) 14.03.17 74 0
412989 소공 D 맞아서 닉넴이 dd냐??? [2] 멍청잼(203.246) 14.03.17 79 0
412987 UML을 건물 설계도에 비유하면 이상한 이유 [2] dd(222.104) 14.03.17 121 0
412986 php 간단한 문제 해결좀 [6] php(168.131) 14.03.17 149 0
412984 컴퓨터공 + 정보통신공 : 복수전공 [3] ㅌㄹㅇ갤로그로 이동합니다. 14.03.17 136 2
412983 공부하기 싫어서 별 좆같은 핑계를 다대네 ^오^ [1] ㅇㅇ(117.111) 14.03.17 84 0
412982 프갤은 작아서 그런지 몰라도 [2] 허세갑(59.24) 14.03.17 101 0
412981 프로그래머용 수학도서인데 아는사람있음? [3] ㅇㅇ(223.62) 14.03.17 151 0
412980 너네 UML 보는게 이해가 빠르냐? 예제코드 보는게 이해가 빠르냐? [10] dd(222.104) 14.03.17 171 0
412978 물리학 공부했다고 해서 [1] 허세갑(59.24) 14.03.17 81 0
412977 물리학까지 배운 넘이 하는 짓이 고작 [1] 허세갑(59.24) 14.03.17 99 1
412976 모니터 메뉴 화면 뜨는것도 C로 짰으려나? [1] ㅇㅅㅇ(223.62) 14.03.17 87 1
412975 왜 멀티스레드가 시간이 더걸릴까 [7] ㄻㄴㅇㅌㅍㅊㄴㅇㄹ(165.132) 14.03.17 187 0
412973 물리학이 위대한건 사실 ㅇㅇ(223.62) 14.03.17 93 0
412972 설계도 없이 집짓겠다 = UML 없이 개발하겠다 [1] ㅇㅇ(117.111) 14.03.17 108 0
412970 아니 근데 우리 물리학과 선배중에 [1] 오월신금갤로그로 이동합니다. 14.03.17 101 1
412969 하 시발 감동햇다 허세갑 오월신금갤로그로 이동합니다. 14.03.17 67 0
412968 이학이 공학에 기웃기웃거리면 망한거 아니냐???? ㅇㅇ(117.111) 14.03.17 73 4
412967 컴퓨터는 매우 중요한학문이다 [10] 오월신금갤로그로 이동합니다. 14.03.17 254 0
412966 나같은경우도 컴퓨터 깔짝대고 [5] 오월신금갤로그로 이동합니다. 14.03.17 98 0
412965 객체지향 왜쓰냐고 글올라오는게 우리나라 수준이니... [4] ㅇㅇ(117.111) 14.03.17 181 0
412963 컴공은 천민학문이지 [1] 오월신금갤로그로 이동합니다. 14.03.17 156 0
412962 이산수학 이해가 안됩니다 설명좀부탁드려요 [1] 이산수학(223.62) 14.03.17 99 1
412961 카메라 모션인식관련 질문있어요 [3] dier(175.223) 14.03.17 96 0
412958 형님들 안드로이드용 간단한 어플 만드려는데 윈도우8.1에서도 가능한가요? [3] ㅇㅅㅇ(223.62) 14.03.17 143 0
412957 믿으면 바보 허세갑(59.24) 14.03.17 65 0
412956 에이핑크 신보 티저 사진 에어로홍갤로그로 이동합니다. 14.03.17 132 0
412955 유토렌트는 돈줄이 어디서 나는거야? [6] 토렌트(58.225) 14.03.17 175 0
412954 어제 코딩 한시간도 안한거 같은데 [6] 허세갑(59.24) 14.03.17 142 0
412953 End To End 솔루션 잼 ^^ [3] ㅇㅇ(211.36) 14.03.17 89 0
412952 it회사인데 인적성어케봄?아 ㅠㅠㅠ [17] 프밍형들도와주세여(175.197) 14.03.17 4969 1
412951 레고 설명서없이 뭐만들면 플밍하는데 도움되냐 [4] 엑박패드플레이어갤로그로 이동합니다. 14.03.17 106 0
412950 무능한 PM 안만나게 기도해라 [2] ㅇㅇ(211.36) 14.03.17 1268 4
412949 C# 예외처리 질문 cs(61.76) 14.03.17 72 0
412948 자바하기 vs C++ 하기 [4] ㅇㅇ(222.112) 14.03.17 224 0
412947 핏도님 욕실 수도꼭지 고치려는데 메이커 추천좀 에어로홍갤로그로 이동합니다. 14.03.17 91 0
412946 뷰어프로그램 이나 기타 가능한 해커분 구합니다. [2] 폭주경운기(183.106) 14.03.17 97 0
412945 커피는 아직인가!! [1] ㅇㅇ(116.123) 14.03.17 105 0
412944 학교다닐때 교수가 컴공은 천민학문이라고함 [4] ㅇㅇ(223.62) 14.03.17 235 0
412943 다른분야는 머리가좋아야하는데 프로그래밍은 적성에만 맞으면되는듯 [7] 123(114.201) 14.03.17 201 0
412942 윤아 본디지 [3] 에어로홍갤로그로 이동합니다. 14.03.17 394 0
412941 .net 서버 좋아? C# 으로 세일은언제나하지갤로그로 이동합니다. 14.03.17 75 0
412940 엑셀이나 엑세스 VBA 프로그래머 고연봉일 듯 [1] 에어로홍갤로그로 이동합니다. 14.03.17 183 0
412939 밑에 프로그램만들고쌀거같단새끼 분명 콘솔창프로그램일듯 5(223.62) 14.03.17 67 0
412938 춥다 [1] HiKiKoMoRi갤로그로 이동합니다. 14.03.17 48 0
뉴스 이효리, 11년 제주살이 이유 따로 있었다…“주변에서 말 많아” 디시트렌드 07.03
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2