강의

멘토링

로드맵

Inflearn brand logo image
Programming

/

Programming Language

Advanced C Language

By understanding the internal structure of the C language, you can implement faster and more memory-optimized programs.

(5.0) 5 reviews

80 learners

  • jikim1770
기본부터 착실히
실습 중심
알고리즘
C
Computer Architecture
device-driver
Embedded

Reviews from Early Learners

What you will learn!

  • Accurate understanding of the four types

  • Understanding the principles of internal branching in control statements

  • Utilization of bitwise operators

  • Understanding the relationship between arrays and pointers

  • Utilizing multiple pointers

  • Understanding the function call mechanism

  • Relationship between functions and pointers and use of callback functions

  • Understanding and utilizing the internal structure of a structure

  • Understanding and Cautions on File Input/Output

Analyze the internal structure of the C language in depth and understand how the program works.

  • This course covers the internal structure of the C language in detail for students who understand the basic grammar of the C language.

  • Explains the behavior of the CPU's internal flags by matching it with the C language grammar.

  • Covers advanced memory-optimized C language techniques.

  • It precisely explains the relationship between arrays and pointers and covers the decay syntax.

This is an advanced C online publishing book.

Learning Content

Section (1) Type

Learn about the memory storage method and CPU processing structure for the four types of C language: char, int, float, and double, through examples.

Section (2) Control Statements

We cover CF, which is used for comparing unsigned integers, and we cover in depth the operation of SF and OF, which are used for comparing signed integers.

Section (3) Operator

We cover advanced memory-optimized programming techniques step-by-step using the bitwise operators (&, |, ~, >>), which are considered the most difficult.

Section (4) Arrays and Pointers

Understand the similarities and differences between arrays and pointers, and cover the complexities of passing or returning arrays as arguments to functions.

Section (5) Multiple Pointers

Understand the implementation of double and triple pointers and the special cases where they must be used.

Section (6) Function Calling Principle

We will cover the function calling convention (cdecl) of the C language and learn about the process of saving and restoring CPU registers when calling a function, along with STACK memory.

Section (7) Functions and Function Pointers

We will cover the similarities and differences between function types and function pointer types, and learn how to implement generic algorithms using function pointers.

Section (8) Structure

We'll understand the background of structures and address the caveats arising from their singularity. We'll also learn how to utilize bitfield structures and unions through implementation.

Section (9) File Input/Output

We will cover the behavior of the FILE structure that stores information and internal library buffers when performing standard file input/output, and learn what to be careful of when performing file input/output.

Things to note before taking the course

Practice environment

  • Operating System and Version (OS): Windows 10, 11, Ubuntu 18.04, 20.04

  • Editing tools: Windows vscode, Ubuntu VIM, gcc

  • Compiler: gcc

Learning Materials

  • Learning materials provided in PDF format

  • During class, we use PPT to write on the board and share it as class materials (PDF).

Player Knowledge and Precautions

  • Prerequisite knowledge for this course: Basic C language skills

  • This lecture video specifications: FPS-60, resolution-1280*720, audio sample rate-44,100

  • Please feel free to ask questions, and the lectures may be revised as new techniques emerge.

  • The learning materials distributed during lectures are for class use only and unauthorized distribution is prohibited.

Recommended for
these people

Who is this course right for?

  • For those who want to learn basic C and advance further

  • Anyone who wants to optimize code implemented in C language

  • Systems Engineers and Embedded Engineers

Need to know before starting?

  • Basic C language

Hello
This is

716

Learners

70

Reviews

11

Answers

4.9

Rating

9

Courses

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

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

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

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

 

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

Curriculum

All

28 lectures ∙ (10hr 45min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

5 reviews

5.0

5 reviews

  • taewoo_kim님의 프로필 이미지
    taewoo_kim

    Reviews 2

    Average Rating 5.0

    5

    100% enrolled

    강의 특징 1. 모든 문법에 대해 왜 나왔는지를 차근차근 예제와 함께 설명해주십니다. 해당 문법이 없는 예제부터 시작해서 해당 문법의 응용 끝판왕까지 쭉쭉쭉쭉 넘나 재밌게 들을 수 있습니다. 2. 미친 파워포인트 신공으로 만드는 메모리 구조도와 함께 더 깊이있게 이해할 수 있습니다. 3. 이만하면 충분히 배부른거 같은데 항상 거기서 한술 더 떠먹여주십니다. 총평 : 참교육자의 진짜 퀄리티 높은 강좌라고 생각합니다.

    • ..님의 프로필 이미지
      ..

      Reviews 5

      Average Rating 5.0

      5

      25% enrolled

      설명을 매우 잘 해주십니다. 강의에 깊이와 스토리가 있습니다. 아직 초반부 듣고있지만 다른 C언어에서는 쉽게 접하기 어려운 내용들을 담백하게 풀어주셔서 매우 만족스럽습니다.

      • 나는그네님의 프로필 이미지
        나는그네

        Reviews 3

        Average Rating 5.0

        Edited

        5

        36% enrolled

        정말 좋은 강의입니다. 추천 드려요

        • 김영택님의 프로필 이미지
          김영택

          Reviews 1

          Average Rating 5.0

          5

          32% enrolled

          • hahaha~님의 프로필 이미지
            hahaha~

            Reviews 18

            Average Rating 5.0

            5

            32% enrolled

            $68.20

            jikim1770's other courses

            Check out other courses by the instructor!

            Similar courses

            Explore other courses in the same field!