Udemyallen

Introduction to Programming: C/C++

Learn [Skill/Topic] from scratch to expert level! This master course provides comprehensive training for all skill levels. Become proficient and confident.

4.3(75)
307students
10h 47m
Certificate
Daniel Szelogowski, Ph.D.
Daniel Szelogowski, Ph.D.Computer Scientist, Choral Music Educator, Vocal Pedagogue

Course Content

Introduction to Programming: C/C++ is an all-levels Udemy course taught by Daniel Szelogowski, Ph.D.. It runs 10h 47m, is taught in English, and includes a certificate of completion. Learners rate it 4.3 out of 5 from 75 reviews, with 307 students enrolled. It is a paid course, last updated June 2022.

Learn the fundamentals of programming with this comprehensive course covering the C language and an introduction to C++. This course provides a strong foundation in procedural programming and introduces object-oriented concepts, setting you up for success in learning higher-level languages like C#, Java, and Python.

What You'll Learn:

This course systematically builds your programming skills, starting with core concepts and progressing to advanced techniques. You'll move from fundamental keywords to high-level abstraction, preparing you for a smooth transition to more complex languages.

C Language Fundamentals:

  • Getting Started: Course introduction, success strategies, understanding programming basics, and environment setup.
  • Core Concepts:
    • Data Types: Master fundamental data types for efficient data representation.
    • Input/Output: Learn to interact with the user and external systems.
    • Operators: Understand and utilize various operators for calculations and comparisons.
    • Conditionals: Control program flow with if, else if, and else statements.
    • Nested Conditionals & Switches: Handle complex decision-making scenarios.
  • Control Flow:
    • Loops: Utilize for and while loops for repetitive tasks.
    • Functions: Write reusable code blocks to improve organization.
    • Recursion: Explore recursive function design.
    • Arrays & Matrices: Work with structured data using arrays and matrices.
  • Advanced C:
    • Strings & String Functions: Manipulate text data effectively.
    • ASCII: Understand character encoding.
    • Pointers: Gain control over memory addresses.
    • Function Pointers: Dynamically call functions.
    • Void Pointers & Static: Advanced pointer concepts.
    • Structures & Unions: Create custom data types.
  • Memory Management:
    • Memory Functions (malloc, calloc, realloc): Allocate and deallocate memory dynamically.
    • Dynamic Strings & Arrays: Manage memory for strings and arrays at runtime.
    • Error Handling: Implement robust error handling mechanisms.
  • File Handling & Preprocessor:
    • Working with Files: Read from and write to files.
    • Binary File I/O: Handle binary data.
    • Random Number Generation: Generate random numbers for various applications.
    • Preprocessor Directives: Understand preprocessor directives, scope, and headers.
    • Conditional Compilation: Control code compilation based on conditions.
    • Preprocessor Operators: Utilize preprocessor operators.

Introduction to C++:

  • C++ vs. C: Understand the key differences, including new data types (strings, booleans) and function/argument overloading.
  • Object-Oriented Programming (OOP):
    • Classes & Objects: Introduction to classes and object creation.
    • Constructors & Objects: Learn to initialize objects correctly.
    • Class Headers & Namespaces: Organize code with headers and namespaces.
    • Member Initializer Lists: Efficiently initialize member variables.
    • Access Keywords: Control access to class members.
    • this Pointer: Understand the this pointer.
    • friend Functions: Define friend functions for access to private members.
    • Inheritance & Polymorphism: Implement inheritance and polymorphism for code reuse and flexibility.
    • Abstract Classes & Interfaces: Design abstract classes and interfaces.
    • virtual Functions: Implement virtual functions for dynamic dispatch.
    • Operator Overloading: Customize operator behavior.
    • Generic Types/Classes (Templates): Write generic code that works with different data types.
    • Exceptions: Handle runtime errors gracefully.
  • Files & Enumerations: Work with files and define enumerations.

Capstone Project:

  • Final Exam: Assess your understanding of the course material.
  • Capstone Project: Apply your knowledge to a practical programming project.

Recommended Textbooks:

  • "C Programming Language, 2nd Edition" by Brian W. Kernighan and Dennis M. Ritchie
  • "The C++ Standard Library: A Tutorial and Reference, 1st Edition" by Nicolai M. Josuttis
$ whoami — the devs behind tutorialsearch.io

Need a web app built? Hire the team behind TutorialSearch.io

We ship fast, production-grade full-stack apps (Next.js, React, edge infra) — the same stack that powers this site.

skillshare
5.0(609)
51m
intermediate
skillshare

PLC Programming

by Allen Mupandasekwa

5.0(44)
2h 50m
all
skillshare
5.0
1h 36m
beginner
pluralsight