Q&A (lint에 관하여)

2024. 8. 21. 19:50·📚 STUDY/🔥 C

📌 lint의 역할이 무엇인가요?

- C 프로그램이 발생할 가능성이 높은 에러들이 있는지 확인함.

  (주로 이상한 자료형들의 집합, 사용되지 않은 변수들, 접근 불간으한 코드, 확장/포팅 되지 않는 코드)

- 진단서처럼 프로그래머들이 확인해야 할 리스트를 뽑아냄.

- 장점 : 컴파일러가 찾아내지 못하는 에러들을 찾아낼 수 있음.

 

📌 lint 어떻게 다운 받을 수 있나요?

- UNIX 표준 도구로, UNIX OS가 아니라면 없음.

- lint 업그레이드 버전인 splint(Secure Programming Lint) 또한 존재하는데, 이는 대부분 리눅스OS에서 제공될 것이고 www.splint.org 에서 다운받을 수 있음.

 

📌 lint를 사용하지 않고, 컴파일러가 좀 더 철저하게 일을 하게 강제할 순 없나요?

- 존재함. 대부분의 컴파일러는 프로그램을 좀 더 철저하게 확인하는 기능이 있음. 

  (코드가 문법에 알맞은지는 물론, 경고문까지 출력해 문제가 발생할 수 있는 지점을 가르쳐줌)

  (본인이 사용하는 컴파일러가 이런 경고 레벨을 사용한다면, 제일 높은 레벨을 선택해 사용하는 것이 좋음.)

  (GCC 컴파일러에서 에러를 확인하는 옵션은 2단원의 Q&A에서 다루도록 함)

 

📌 프로그램을 최대한 안정적으로 만들고 싶은데, lint나 디버거 말고 또 추가로 할 수 있는 도구가 없을까요?

- 존재함. 대표적으로 "바운즈 체커bounds-checker"와 "릭 파인더leak-finder"가 있음.

- C는 굳이 배열 첨자를 확인하라고 하지 않는데, 바운즈 체커는 이를 확인해줌.

- 릭 파인더는 메모리 누수를 찾아줌.

 

추가적으로, 링크를 달아놓겠습니다.

https://www.ibm.com/docs/ko/aix/7.2?topic=l-lint-command

 

lint 명령

용도 C 및 C++ 언어 프로그램에 문제점이 있는지 검사합니다. 구문 lint [ -a ] [ -b ] [ -c ] [ -C ] [ -h ] [ -lKey ] [ -n ] [ -oLibrary ] [ -qDBCS ] [ -p ] [ -t ] [ -u ] [ -v ] [ -w Class [Class ... ] ] [ -x ] [ -MA ] [ -NdNumber ] [ -N

www.ibm.com

 

 

💡 본 내용은 K.N.King의 C Programming: A Modern Approach 책을 참고하였습니다.

저작자표시 (새창열림)

'📚 STUDY > 🔥 C' 카테고리의 다른 글

[2-3] 주석  (2) 2024.08.22
[2-2] 간단한 프로그램의 일반적인 구조  (0) 2024.08.22
[2-1] 간단한 프로그램 짜기  (1) 2024.08.22
[1-2] 장점과 단점  (4) 2024.08.21
[1-1] C의 역사  (3) 2024.08.21
'📚 STUDY/🔥 C' 카테고리의 다른 글
  • [2-2] 간단한 프로그램의 일반적인 구조
  • [2-1] 간단한 프로그램 짜기
  • [1-2] 장점과 단점
  • [1-1] C의 역사
엄지잉
엄지잉
공부하는거 올림
  • 엄지잉
    엄지잉의 이것저것
    엄지잉
  • 전체
    오늘
    어제
    • 분류 전체보기 (94)
      • 🏫 학교 (2)
        • 👩‍🏫 교직 (1)
        • 🏢 USG (1)
      • 🌱 탐구 (17)
        • 📷 SLAM (7)
        • 💡 연구 (8)
        • 🌐 BOJ (2)
      • 📚 STUDY (47)
        • 🔥 C (32)
        • 📈 알고리즘 (9)
        • 👀 컴퓨터비전 (5)
        • 🔆 UNITY (1)
      • 🏆 자격증 (23)
        • ⚡ 정처기 (17)
        • 🔠 TOEIC (6)
      • 🎈 활동 (4)
        • 🎁 CJ 리모트 인턴십 (2)
        • 😶 기타 (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    정처기
    식별자
    azurekinect
    C
    알고리즘
    정보시스템 구축관리
    SW 개발
    Azure Kinect
    mocopi
    프언 활용
    c기초
    DB 구축
    Unity
    Remote Internship
    필기
    opencv
    토익
    RC
    실기
    Body Tracking
    모션캡처
    정보처리기사
    BOJ
    SW 설계
    2021년
    C언어
    Slam
    2022년
    컴퓨터비전
    C++
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
엄지잉
Q&A (lint에 관하여)
상단으로

티스토리툴바