Design and Implementation of a C Coding Style Checker

C 코딩 스타일 검증기의 설계 및 구현

  • 황준하 (금오공과대학교 컴퓨터공학부)
  • Published : 2008.03.31

Abstract

Various coding styles for C language have been proposed so far but there has been a lack of synthetic review about them. In this paper, I propose a new C coding style by analyzing coding rules that are included in the representative C coding styles and by adding new coding rules besides them. In addition, I designed an automated C coding style checker named CStyler which was implemented using Lex and Yacc. It is designed to be able to verify unpreprocessed source code as well as preprocessed source code. And I improved its flexibility by being able to add a new coding rule by end user. I think that the new C coding style and coding style checker, CStyler, can be utilized for education and for future research to develop and extend a static analysis tool.

지금까지 C 언어에 대한 다양한 코딩 스타일이 제시되어 왔으나 코딩 스타일에 대한 종합적인 검토가 부족하였다. 본 논문에서는 대표적인 C 코딩 스타일에 포함된 코딩 규칙들을 분석하고 그 외에 새로운 코딩 규칙들을 추가함으로써 새로운 C 코딩 스타일을 제안하고 있다 아울러 CStyler라고 명명한 자동화된 C 코딩 스타일 검증기를 설계하였으며 Lex와 Yacc를 활용하여 이를 구현하였다. CStyler는 전처리가 수행된 후의 코드뿐만 아니라 전처리가 수행되기 전의 소스 코드에 대해서도검증이 가능하도록 설계되었으며, 사용자가 새로운 코딩 규칙을 추가할 수 있도록 함으로써 유연성을 개선하였다. 본 논문에서 제시한 코딩 스타일과 코딩 스타일 검증기는 C 언어 교육과 향후 정적 분석 도구를 개발하고 확장하기 위한 연구에 활용될 수 있을 것으로 사료된다.

Keywords