개발 · 프로그래밍

/

프로그래밍 언어

고급 C언어

C언어 내부 구조를 이해하여 좀 더 빠르고 메모리 최적화된 프로그램을 구현할 수 있습니다.

(5.0) 수강평 2개

수강생 52명

Thumbnail

중급자를 위해 준비한
[프로그래밍 언어, C] 강의입니다.

이런 걸
배워요!

  • 4가지 타입의 정확한 이해

  • 제어문의 내부 분기의 원리 이해

  • 비트연산자의 활용

  • 배열과 포인터의 관계 이해

  • 다중 포인터의 활용

  • 함수 호출 매커니즘 이해

  • 함수와 포인터의 관계 및 콜백 함수 활용

  • 구조체 내부구조 이해 및 활용

  • 파일 입출력의 이해 와 주의 사항

C언어 내부구조를 심도 있게 분석 하고 프로그램의 동작 방식을 이해

  • C 언어 기본 문법을 이해한 수강생 분들을 위한 C언어 내부 구조를 상세히 다룹니다.

  • CPU의 내부 flag의 동작의 C언어 문법과 매칭 하여 설명합니다.

  • 메모리 최적화된 C언어 고급 기법을 다룹니다.

  • 배열과 포인터의 관계를 정확히 설명하고 Decay 문법을 다룹니다.

고급 C 온라인 출판 서적 입니다.

학습 내용

섹션 (1) Type

C언어 4가지 타입인 char,int,float,double에 대한 메모리 저장 방식과 CPU 처리 구조를 예제를 통해 배웁니다.

섹션 (2) 제어문

부호 없는 정수의 비교에 사용되는 CF를 다루고, 부호 있는 정수의 비교에 사용되는 SF,OF의 동작을 심도있게 다룹니다.

섹션 (3) 연산자

가장 어렵게 생각되는 비트연산자(&,|,~,>>)를 이용하여 메모리 최적화된 고급 프로그래밍 기법을 단계별로 다룹니다.

섹션 (4) 배열과 포인터

배열과 포인터의 공통점과 차이점을 이해하고 배열을 함수의 인자로 넘기거나 리턴 할 때의 복잡성을 다룹니다.

섹션 (5) 다중 포인터

이중 포인터와 삼중 포인터를 다루고 이를 반드시 사용해야 하는 특수한 경우에 대한 구현으로 이해합니다.

섹션 (6) 함수의 호출 원리

C언어의 함수 호출 규약(cdecl)에 대해 다루고 함수 호출 시 CPU 레지스터의 저장 및 복원 과정을 STACK 메모리와 함께 배웁니다.

섹션 (7) 함수와 함수 포인터

함수 타입과 함수 포인터 타입의 공통점과 차이점을 다루고 함수 포인터를 이용한 제네릭 알고리즘 구현법을 배웁니다.

섹션 (8) 구조체

구조체의 등장 배경을 이해하고, 구조체의 특이점 때문에 발생하는 주의 사항을 다룹니다. 또한 비트 필드 구조체와 공용체를 이용한 활용을 구현으로 배웁니다.

섹션 (9) 파일 입출력

표준 파일 입출력 시 내부 라이브러리 버퍼와 정보를 저장하는 FILE 구조체의 동작을 다루고 파일 입출력 시 주의 해야 되는 부분을 배웁니다.

수강 전 참고 사항

실습 환경

  • 운영 체제 및 버전(OS): Windows 10,11 Ubuntu 18.04, 20.04

  • 편집 도구 : Windows vscode, Ubuntu VIM, gcc

  • 컴파일러 : gcc

학습 자료

  • 제공하는 학습 자료 형식 (PDF)

  • 수업 시 ppt를 이용한 판서를 진행하고 이를 수업 자료(PDF)로 공유합니다.

선수 지식 및 유의사항

  • 본 과정을 듣기 위한 선수 지식 : C언어 기본

  • 본 강의 동영상 사양 : FPS-60, 해상도-1280*720, 오디오 샘플 레이트-44,100

  • 언제든 질문해 주시고, 강의는 새로운 기법이 나오면 수정될 수 있습니다.

  • 강의 시 배포되는 학습 자료는 수업에만 참고 하시고 무단 배포는 금합니다.

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • 기본 C를 배우고 더 나아가고 싶으신 분

  • C언어로 구현된 코드의 최적화를 하고 싶으신 분

  • 시스템 엔지니어 및 임베디드 엔지니어

선수 지식,
필요할까요?

  • 기본 C 언어

김정인 강사님은 오픈소스가 중요하다며

리눅스 커널 및 딥러닝의 구현 소스를 취미 삼아 매일 분석 하는 오픈 소스 매니아 입니다.

소스를 통해 이해 한다며 무작정 소스 분석으로 모든 원리를 이해하려 하므로

수강 시 소스 폭탄에 주의 해야 합니다.

 

강의문의 : jikim@imguru.co.kr

커리큘럼

전체

28개 ∙ (10시간 45분)

수업 자료

가 제공되는 강의입니다.

  • 정수의 이해 II

    24:32

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!