קורסים מקצועיים למתקדמים

פיתוח תוכנה

Advanced C Programming

מספר הקורס 6865

למה ללמוד בג'ון ברייס?
  • למידה חדשנית ודינמית עם כלים מתקדמים בשילוב סימולציות, תרגול וסביבות מעבדה
  • מגוון הכשרות טכנולוגיות עם תכנים המותאמים להתפתחות הטכנולוגית ולביקוש בתעשיית ההייטק
  • מובילים את תחום ההכשרות לעולם ההייטק והטכנולוגיה כבר 30 שנה, עם קהילה של עשרות אלפי בוגרים
  • אתם בוחרים איך ללמוד: פרונטאלית בכיתה, מרחוק ב- Live Class או בלמידה עצמית

המועדים הקרובים

קורס לקבוצות

הקורס נפתח במתכונת של קבוצה בלבד, בהתאמה אישית לארגונים.
לפרטים נוספים: Muzman@johnbryce.co.il

משך הקורס

שעות אקדמיות:

32

מספר מפגשים:

קורס בוקר:

4

מתכונת הקורס

הקורסים המוזמנים לארגונים מותאמים באופן אישי ומלא לצרכי הארגון, מערכי הלימוד גמישים וניתן לשלב בהם תכנים רלוונטיים וייעודיים.

Overview

The ‘Advanced C Programming’ course increases delegate’s knowledge and understanding of the language, including the recent ISO 9899:1999 (C99) standard changes, and helps delegates to gain experience in areas of C that previous work may not have covered. Delegates will also be better equipped to write and maintain large C programs, and will also gain a better understanding of the way the language works and is implemented

On Completion, Delegates will be able to

Read and write complex data declarations and type definitions

Use advanced pointer techniques to construct and work with complex data structures Use advanced standard library functions, including process control, searching and sorting Handle memory allocation

Exploit features of C99

Who Should Attend

This course is designed for the practiced software developer and allows delegates to gain a better understanding of the language, run-time library, and software engineering techniques available with the C language

תכנית הלימודים

Full Syllabus
PDF להורדה

Chapter 1: C Standards

  • Review of C standards
  • K&R1 and STDC functions
  • C99 inline functions
  • Enumeration
  • const, volatile, Boolean, and floating point types
  • Limits

Chapter 2: The Preprocessor

  • Predefined macros
  • Conditional compilation
  • Advanced directives (including assert)
  • Trigraphs and C99 digraphs
  • C99 Variadic macros

Chapter 3: Declarations

  • Reading and writing declarations
  • Using typedefs effectively
  • Using casts

Chapter 4: Advanced Pointers

  • Levels of indirection
  • Void pointers
  • Defining and using function pointers
  • C99 restricted pointers

Chapter 5: Advanced Arrays

  • Arrays and functions
  • Pointers and arrays
  • C99 Variable Length Arrays
  • memset

Chapter 6: Arrays of Arrays

  • Declarations
  • Initialisation
  • Arrays of arrays as function arguments

Chapter 7: Advanced Structures

  • Declaring and defining structures
  • C99 changes
  • Bitfields
  • Packing and padding
  • Reading and writing structs to files

Chapter 8: Dynamic Memory Management

  • Allocating arrays
  • Allocating structures
  • Error detection and debugging techniques
  • Writing your own error detection library

Chapter 9: Standard Library – Process Control

  • Running another process
  • Process termination
  • Exception handling (setjmp/longjmp)
  • Environment variables

Chapter 10: Standard Library – Useful Functions

  • Calling conventions
  • Writing variadic functions
  • Date and time functions
  • Random numbers

Chapter 11: Sorting and Searching

  • qsort
  • Comparison functions
  • Indirect sorting (pointers)
  • bsearch

Chapter 12: Linked Lists

  • Linked list principles
  • Using recursive functions
  • Implementing a circular list
  • Implementing a self-adjusting list

Chapter 13: Binary Trees

  • Binary tree principles
  • Using trees for sorted data
  • Insertion
  • Deletion

 

Prerequisites
  • Between three and six months of concentrated C programming experience
  • Experience of structured data types
  • Experience of the declaration and use of pointers
  • The course will also benefit self-taught C programmers wishing to gain a formal education in the language.

Schedule Appointment

Fill out the form below, and we will be in touch shortly.

לא הצלחנו לאתר את הטופס.