Advanced C Programming Course

BY
Udemy

Lavel

Expert

Mode

Online

Fees

₹ 499 3499

Quick Facts

particular details
Medium of instructions English
Mode of learning Self study
Mode of Delivery Video and Text Based

Course and certificate fees

Fees information
₹ 499  ₹3,499
certificate availability

Yes

certificate providing authority

Udemy

The syllabus

Introduction

  • Welcome to Class!
  • Class Organization
  • The C99 Standard
  • The C11 Standard

Installing Required Software

  • Overview
  • Installing the C compiler (Windows)
  • Installing the C compiler (Mac)
  • Installing Code Blocks (Windows)
  • Installing CodeLite (Windows)
  • Installing CodeLite (Mac)
  • Installing Visual Studio Code (Windows)
  • Installing Visual Studio Code (Linux)
  • Installing Visual Studio Code (Mac)

Starting to Write Code

  • Exploring the Code Blocks Environment
  • Creating a Project in Code Blocks
  • Exploring the Visual Studio Code Environment
  • Creating a Workspace and configuring the compiler in Visual Studio Code

Working with Larger Programs

  • Overview
  • Compiling multiple source files from the command line
  • Makefiles
  • Communication between files
  • Using Header Files effectively
  • Heap and Stack Memory Allocation

Storage Classes

  • Automatic Variables
  • External
  • Static
  • Register
  • (Quiz)
  • (Challenge)

Advanced Data Types

  • The #define statement (constants)
  • Using typedef
  • Variable Length Arrays
  • (Challenge) Variable Length Arrays
  • Flexible Array Members
  • (Challenge) Flexible Array Members
  • Complex number types
  • (Challenge) Complex number types
  • Designated Initializers
  • (Quiz)
  • (Demonstration) Challenge solutions

Type Qualifiers

  • const
  • volatile
  • restrict
  • (Quiz)

Bit Manipulation

  • Binary numbers and bits
  • (Challenge) Binary numbers and Bits
  • (Demonstration) Binary numbers and Bits
  • Bitwise Operators (Logical)
  • Bitwise Operators (Shiftingl)
  • (Challenge) Bitwise Operators
  • (Demonstration) Bitwise Operators
  • Bitmasks
  • Using Bit Operators to pack data
  • (Challenge) Setting and Reading bits
  • (Demonstration) Setting and Reading bits
  • Using Bit Fields to pack data
  • (Challenge) Using Bit Fields to pack data
  • (Demonstration) Using Bit Fields to pack data
  • (Quiz)

Advanced Control Flow

  • The goto statement
  • (Challenge) The goto statement
  • The null statement
  • The comma operator
  • setjmp and longjmp functions
  • (Challenge) setjmp and longjmp functions
  • (Demonstration) Advanced Control Flow
  • (Quiz)

Input and Output

  • char functions (input)
  • char functions (output)
  • (Challenge) char functions
  • (Demonstration) char functions
  • string functions
  • (Challenge) string functions
  • (Demonstration) string functions
  • Formatting functions
  • (Challenge) Formatting functions
  • (Demonstration) Formatting functions
  • (Quiz)

Advanced Functions Concept

  • Variadic Functions
  • va_copy
  • (Challenge) Variadic Functions
  • (Demonstration) Variadic Functions
  • Recursion
  • (Challenge) Recursion
  • (Demonstration) Recursion
  • Inline Functions
  • _Noreturn Functions
  • (Quiz)

Unions

  • Overview
  • Defining a Union
  • Accessing Union Members
  • (Challenge) Unions
  • (Demonstration) Unions
  • (Quiz)

The Preprocessor

  • Overview
  • Conditional Compilation
  • Include guards and #undef
  • #pragma and #error
  • (Quiz)

Macros

  • Overview
  • Macros vs. Functions
  • Creating your own Macros
  • Preprocessors Operators
  • Predefined Macros
  • (Challenge) Macros
  • (Demonstration) Macros

Advanced Debugging, Analysis and Compiler Options

  • GCC Compiler Options (part 1)
  • GCC Compiler Options (part 2)
  • Debugging with the preprocessor
  • Debugging with gdb (part 1)
  • Debugging with gdb (part 2)
  • core files
  • Profiling
  • Static Analysis
  • (Challenge)
  • (Demonstration)

Advanced Pointers

  • Double pointers (pointer to a pointer)
  • Double pointers (pointer to a pointer) Part 2
  • (Challenge) Double pointers
  • (Demonstration) Double pointers
  • Function pointers
  • (Challenge) Function pointers
  • (Demonstration) Function pointers
  • Void Pointers
  • (Quiz)

Static Libraries and Shared Objects

  • Overview
  • Creating a Static Library (archive)
  • (Challenge) Static Library
  • (Demonstration) Static Library
  • Creating a Dynamic Library (Shared object)
  • (Challenge) Dynamic Library
  • (Demonstration) Dynamic Library
  • Dynamically loading a shared object
  • (Challenge) Dynamic Loading
  • (Demonstration) Dynamic Loading

Useful C Libraries

  • Assert
  • General Utilities (stdlib.h)
  • General Utilities (stdlib.h) part 2
  • General Utilities (stdlib.h) part 3
  • Date and Time functions
  • (Challenge)
  • (Demonstration)
  • (Quiz)

Data Structures

  • Abstract Data Types
  • Linked Lists (Overview)
  • Linked LIsts (Implementation)
  • (Challenge) Linked Lists
  • (Demonstration) Linked Lists
  • Stacks (Overview)
  • Stacks (Implementation)
  • Queues (Overview)
  • Queues (Implementation)
  • Binary Trees (Overview)
  • Binary Trees (Implementation)
  • (Quiz)

Interprocess Communication and Signals

  • Interprocess Communication
  • Signals (Overview)
  • Raising a Signal
  • Handling a Signal using the signal function
  • Handling a Signal using sigaction
  • The fork() system call
  • (Challenge)
  • (Demonstration)

Threads

  • Overview
  • Creating a thread
  • Passing arguments and returning values
  • Common Thread functions
  • Thread Synchronization Concepts
  • Mutexes
  • Condition Variables
  • (Challenge)
  • (Demonstration)
  • (Quiz)

Networking (Sockets)

  • Overview
  • The Socket API
  • Creating a Server Socket
  • Creating a Client Socket
  • (Challenge)
  • (Demonstration)

Conclusion

  • Course Summary

Extra Information - Source Code and other stuff

  • Source Codes
  • Bonus Lecture and Information

Articles

Popular Articles

Latest Articles

Similar Courses

Computer Vision for Embedded Systems

Purdue University, West Lafayette via Edx

5 Weeks Online
Expert
Free
Problem Solving & System Design Advanced

Problem Solving & System Design Advanced

Scaler Academy

11 Months Online
Expert
₹ 309,000

Courses of your Interest

Quantum Computer Systems Design I Intro to Quantum...

Quantum Computer Systems Design I Intro to Quantum...

UChicago via Edx

4 Weeks Online
Expert
Free
Fundamentals of Quantum Information

Fundamentals of Quantum Information

Delft University of Technology via Edx

4 Weeks Online
Expert
Free
Quantum Computer Systems Design II Principles of Q...

Quantum Computer Systems Design II Principles of Q...

UChicago via Edx

4 Weeks Online
Expert
Free
Quantum Computer Systems Design III Working with N...

Quantum Computer Systems Design III Working with N...

UChicago via Edx

4 Weeks Online
Expert
Free

HTML5 Apps and Games

World Wide Web Consortium via Edx

4 Weeks Online
Expert
Free

Advanced PowerPoint Training

Udemy

Online
Expert
₹ 3,499
Trees and Graphs Basics

Trees and Graphs Basics

CU Boulder via Coursera

4 Weeks Online
Expert

Machine Learning Devops Engineer

Udacity

4 Months Online
Expert
Introduction to Graduate Algorithms

Introduction to Graduate Algorithms

Georgia Tech via Udacity

3 Months Online
Expert
Free
Cyber-Physical Systems Design & Analysis

Cyber-Physical Systems Design & Analysis

Georgia Tech via Udacity

Online
Expert
Free

More Courses by Udemy

Learn Microsoft Excel 2013 Advanced

Udemy

Online
Expert
₹399 ₹3,299

Microsoft Project Advanced Project Management Tech...

Udemy

Online
Expert
₹499 ₹2,999

O Level Computer Certification

Udemy

Online
Expert
₹449 ₹1,799

Advanced SQL MySQL Data Analysis and Business Inte...

Udemy

Online
Expert
₹599 ₹4,099

Advanced Agile and Scrum PMI 8 Contact Hours

Udemy

Online
Expert
₹449 ₹2,499

Trending Courses

Popular Courses

Popular Platforms

Learn more about the Courses

Download the Careers360 App on your Android phone

Regular exam updates, QnA, Predictors, College Applications & E-books now on your Mobile

Careers360 App
150M+ Students
30,000+ Colleges
500+ Exams
1500+ E-books