웨비나

기초 특강) C언어 완전 정복하기 6탄 - 매크로, inline 100% 활용

2018.01.26 10:30~11:26 정재준 대표 / 전기전자 평생교육원
  • 홍다음2018-04-09T16:25:43.363Z

    3번 추가
  • 2018-04-09T16:25:56.237Z

    3번 답변
  • 홍다음2018-04-09T16:20:28.980Z

    또하나 추가요
  • 2018-04-09T16:20:53.813Z

    또 답변드려요
  • 홍다음2018-04-09T16:13:43.500Z

    추가질문테스트
  • 2018-04-09T16:14:00.177Z

    답변 드립니다.
  • 여경민2018-01-26T11:23:46.900Z

    가끔 inline이라고 선언을 해줘도 인라인화?? 되지 않는 경우가 있는것 같은데요.. 혹시 컴파일러가 뭔가의 기준을 가지고 선택하는 과정이 있나요?
  • 2018-01-26T11:24:51.803Z

    네, 컴파일 옵션중에서 최적화 옵션이 있습니다. -O 옵션인데,, 이 옵션의 레벨에 따라서 컴파일러 내부적으로 판단해서 처리합니다.
  • 여경민2018-01-26T11:15:51.073Z

    매크로 함수를 사용하면 컴파일러에서 버그를 못찾을 가능성이 있지 않나요?
  • 2018-01-26T11:18:40.183Z

    네, 프로그램 디버깅이 좀 까다로울수 있습니다. 하지만, 컴파일러가 매크로를 모두 치환한 소스를 가지고 디버깅 하는 방법도 있는데, 컴파일러 옵션을 참고하시면 되는데, 저도 자주 사용 안해봐서 지금 자세한 설명은 힘들듯 합니다. 컴파일 옵션을 참조해야 할듯 합니다.
  • 김승주2018-01-26T11:09:06.533Z

    C언어 기초 강의 같은 하드웨어 분야도 기초 강의를 많이 해주셨으면 좋겠습니다. 항상 유익한 강의 감사합니다!^^
  • 2018-01-26T11:13:45.467Z

    네~ 하드웨어 분야도 앞으로 준비해 보도록 할게요~ 감사합니다(^^)
  • 이호성2018-01-26T11:08:26.707Z

    매크로를 사용하면 전역변수 처럼 메모리 먹지 않는건가요??
  • 2018-01-26T11:12:39.267Z

    매크로는 코드가 컴파일러에 의해서 치환(복사) 되기 때문에.. 프로그램 코드 영역의 메모리는 더 크지게 됩니다. 즉, 프로그램 코드는 더 크진다는 단점이 있습니다. 하지만, 자주 사용하는 코드는 매크로로 만들면 코드의 유지보수성이 좋아지는 장점이 있습니다.
  • 지정호2018-01-26T11:08:04.660Z

    좋은 강의 감사합니다~ ^^
  • 2018-01-26T11:13:18.030Z

    네~ 즐거운 하루 되세요~
  • 김승주2018-01-26T11:07:59.110Z

    연산의 우선순위를 다시한번 리뷰하는 시간이 되어서 좋네요^^
  • 2018-01-26T11:10:12.377Z

    네~ 연산자 우선순위도 중요한데.. 특히 sqaure 매크로 같이 사용할때 주의해야 할듯 합니다.
  • 지정호2018-01-26T11:03:09.473Z

    [질문]C언어 매크로는 함수 포함 모든 것을 치환하고 inline함수는 함수 자체로 활용 시 프로그램 특정 상황에서 어떤 것을 사용하면 더 좋은지 궁금합니다.
  • 2018-01-26T11:09:19.197Z

    인라인 함수는 함수안의 코드는 작은데 프로그램안에서 자주 호출되는 함수에 사용하면 가장 좋습니다. 예를들어 string_compare() 함수를 자주 사용(호출)한다면 인라인 함수로 만들어서, 컴파일러가 코드를 치환(복사)하여 호출되지 않고 그냥 실행되도록 해주면 호출에 의한 속도 지연이 없어집니다.