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] 주석  (1) 2024.08.22
[2-2] 간단한 프로그램의 일반적인 구조  (0) 2024.08.22
[2-1] 간단한 프로그램 짜기  (0) 2024.08.22
[1-2] 장점과 단점  (3) 2024.08.21
[1-1] C의 역사  (2) 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
  • 공지사항

  • 인기 글

  • 태그

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

  • 최근 글

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

티스토리툴바