환형 이중 링크드 리스트 프로그램
- 최초 등록일
- 2005.01.20
- 최종 저작일
- 2005.01
- C언어
- 가격 3,000원
소개글
c프로그램을 입력파일로 하는 토큰 추출프로그램입니다.
공백문자(탭,엔터,스페이스,리턴)와 널문자도 리턴이됩니다.물론 일반 토큰도 리턴이 되어 출력이 되고요..
그리고 define,undef 매크로가 나올경우 이를 환형 이중 링크드 리스트에 저장하도록 구성되었습니다.
여기서 공백문자와 널문자는 리턴이 되지 않게 할수도 있습니다. 조금만 수정하시면요..그리고 리턴은 되어도 출력이 안되게 할수도 있습니다..역시 조금 수정하면요... 큰 도움이 되실거에요...
그리고 실행방법은 위에서처럼 하시면 되고 < 는 리다이렉션입니다.. 리다이렉션으로 입력파일을 직접 입력하지 않고 소스내에서 파일을 열어서 토큰을 추출하게 할수도 있습니다. 이역시 아주 조금만 수정하면 됩니다... 혹시 원하시는 수정내용이 있으시면 메일보내주시면 ...^^
kolove79@naver.com
컴파일 실행환경
gcc 컴파일러 사용, unix 실행환경
gcc xxx.c
./a.out < 입력파일(c소스파일)
(gcc의 구체적 사용법은 인터넷 참고)
본문내용
// 토큰추출하여 define,undef매크로가 나올경우
// 환형 이중 링크드 리스트에 상입,제거하는 프로그램
#include <stdio.h>
#include <stdlib.h>
typedef struct macro_s *list_pointer;
typedef struct macro_s {
char *name;
char *value;
list_pointer next, prev;
}macro;
list_pointer head=NULL;
int GetToken(char *buff)
{
static char token1[70],token2[30],token3[30]; // 입력받은 문자들로 토큰을 구성할 배열
static int index1=0; static int index2=0; static int index3=0;
static int flag1=0; // 이중연산자 판별 플래그
static int flag2=0; // 괄호연산자 판별 플래그
static int flag3=0; // 포인터연산자 판별 플래그
static int flag4=0; // /*,*/ 판별 플래그
static int flag5=0; // // 판별 플래그
static int flag6=0;
참고 자료
없음