Course: Functions and Memory in C
duration: 11 hours |
Language: English (US) |
access duration: 180 days |
Details
This course will teach you all about the functions and memory of programming language C. You start this course by exploring the basics of functions and how to use them in C. Next, you’ll move on to variable scopes, storage classes and structs to reuse codes in an efficient and effective way. Then, you’ll explore pointers to learn how to view the memory location referenced by the pointer and how to dereference a pointer to view the data at the referenced address or modify data stored at the memory location being pointed to. Next, you’ll take a deeper dive into the nuances of arrays and pointers and discover how to use pointer arithmetic as a method of viewing array elements. Finally, you will compare stack and heap memory, exploring the advantages and limitations of each.
Result
After completing this course, you'll be able to define and invoke functions, confidently leverage variable scopes and storage classes to define values, scope, and visibility and use pointers, arrays, and different types of memory.
Prerequisites
No formal prerequisites. However, some prior knowledge about the topic is recommended.
Target audience
Software Developer, Web Developer
Content
Functions and Memory in C
Functions and Memory in C: Getting Started with Functions
In C, as in other programming languages, the term function
- refers to a named and parameterized block of code that can be
- invoked repeatedly. Functions allow monolithic programs to be split
- into modular chunks, greatly facilitating code reuse and
- simplifying and improving the logical structure of programs.
- Explore C functions and learn how they are defined, declared, and
- invoked. Next, move on to built-in functions and discover how to
- convert strings to integers, floats, or longs. Then, you will
- create your own functions to accept input arguments from and return
- output to the invoker of the function. Finally, you will study the
- difference between the declaration and the definition of a
- function. After completing this course, you'll be able to define
- and invoke functions, understand implicit and explicit function
- declarations, and use both library functions and user-defined
- functions.
Functions and Memory in C: Using Variable Scopes, Storage Classes, & Structs
A vital part of programming is being able to reuse codes in an
- efficient and effective way. Using variable scopes, storage
- classes, different user-defined types like structs, unions and
- enums allow programmers to scale their programs and create
- meaningful structures. Begin by exploring variable scope and learn
- how to input argument scoping and redefine variables. Discover how
- to work with storage classes and access them in file scope, local
- scope, and across files. Finally, take a look at different
- user-defined types in C. Upon completion of this course, you will
- be able to confidently leverage variable scopes and storage classes
- to define values, scope, and visibility.
Functions and Memory in C: Getting Started with Pointers
One of the main reasons C retains its relevance after 50 years
- is the level of interaction between the programmer and the memory
- which C allows for. While more modern languages such as Python
- manage the memory under-the-hood, C allows the user to control all
- aspects of memory management. At the heart of C’s memory management
- capabilities lie pointers. Begin this course focusing on memory
- allocation layout and the concepts of stack and heap memory. Then,
- explore pointers to learn how to view the memory location
- referenced by the pointer and how to dereference a pointer to view
- the data at the referenced address or modify data stored at the
- memory location being pointed to. Finally, use the NULL keyword as
- both a value and a pointer to the non-existent memory address of 0.
- Upon completion of this course, you'll be able to use referencing
- and dereferencing operators in C and properly test for and use NULL
- values.
Functions and Memory in C: Leveraging Pointers with Arrays & Functions
Pointers are some of the most important building-blocks of C and
- are used with a variety of data types. In particular, pointers have
- a special relationship with arrays, because an array is effectively
- a pointer to a contiguous block of memory used to hold elements of
- a specific type. In this course, you will create both arrays and
- pointers to those arrays. Next, take a deeper dive into the nuances
- of arrays and pointers and discover how to use pointer arithmetic
- as a method of viewing array elements. Finally, explore passing
- pointers and arrays into functions. After completing this course,
- you'll be able to leverage the equivalence between pointers and
- arrays, use pointer arithmetic, and return pointers from
- functions.
Functions and Memory in C: Allocating Memory on the Heap
C programmers can commonly use two kinds of memory: stack and
- heap. While stack memory is used to store local variables and is
- fully managed by C, it does have major limitations that are
- mitigated by heap memory. In this course, you will compare stack
- and heap memory, exploring the advantages and limitations of each.
- Then, you will allocate memory using the malloc() function and
- deallocate memory using free(). Next, you will examine dangling
- memory issues that can cause potentially dangerous security issues.
- You will also explore other common allocation functions like
- calloc() to zero out memory and realloc() to help when you
- underestimate how much memory an array will require. Finally, you
- will focus on pointers to struct objects. After completing this
- course, you'll be able to allocate memory malloc, calloc, and
- realloc; free memory; use pointers to structs; and avoid problems
- related to dangling pointers and memory leaks.
Course options
We offer several optional training products to enhance your learning experience. If you are planning to use our training course in preperation for an official exam then whe highly recommend using these optional training products to ensure an optimal learning experience. Sometimes there is only a practice exam or/and practice lab available.
Optional practice exam (trial exam)
To supplement this training course you may add a special practice exam. This practice exam comprises a number of trial exams which are very similar to the real exam, both in terms of form and content. This is the ultimate way to test whether you are ready for the exam.
Optional practice lab
To supplement this training course you may add a special practice lab. You perform the tasks on real hardware and/or software applicable to your Lab. The labs are fully hosted in our cloud. The only thing you need to use our practice labs is a web browser. In the LiveLab environment you will find exercises which you can start immediately. The lab enviromentconsist of complete networks containing for example, clients, servers,etc. This is the ultimate way to gain extensive hands-on experience.
Sign In
WHY_ICTTRAININGEN
Via ons opleidingsconcept bespaar je tot 80% op trainingen
Start met leren wanneer je wilt. Je bepaalt zelf het gewenste tempo
Spar met medecursisten en profileer je als autoriteit in je vakgebied.
Ontvang na succesvolle afronding van je cursus het officiële certificaat van deelname van Icttrainingen.nl
Krijg inzicht in uitgebreide voortgangsinformatie van jezelf of je medewerkers
Kennis opdoen met interactieve e-learning en uitgebreide praktijkopdrachten door gecertificeerde docenten
Orderproces
Once we have processed your order and payment, we will give you access to your courses. If you still have any questions about our ordering process, please refer to the button below.
read more about the order process
Een zakelijk account aanmaken
Wanneer u besteld namens uw bedrijf doet u er goed aan om aan zakelijk account bij ons aan te maken. Tijdens het registratieproces kunt u hiervoor kiezen. U heeft vervolgens de mogelijkheden om de bedrijfsgegevens in te voeren, een referentie en een afwijkend factuuradres toe te voegen.
Betaalmogelijkheden
U heeft bij ons diverse betaalmogelijkheden. Bij alle betaalopties ontvangt u sowieso een factuur na de bestelling. Gaat uw werkgever betalen, dan kiest u voor betaling per factuur.
Cursisten aanmaken
Als u een zakelijk account heeft aangemaakt dan heeft u de optie om cursisten/medewerkers aan te maken onder uw account. Als u dus meerdere trainingen koopt, kunt u cursisten aanmaken en deze vervolgens uitdelen aan uw collega’s. De cursisten krijgen een e-mail met inloggegevens wanneer zij worden aangemaakt en wanneer zij een training hebben gekregen.
Voortgangsinformatie
Met een zakelijk account bent u automatisch beheerder van uw organisatie en kunt u naast cursisten ook managers aanmaken. Beheerders en managers kunnen tevens voortgang inzien van alle cursisten binnen uw organisatie.
What is included?
Certificate of participation | Yes |
Monitor Progress | Yes |
Award Winning E-learning | Yes |
Mobile ready | Yes |
Sharing knowledge | Unlimited access to our IT professionals community |
Study advice | Our consultants are here for you to advice about your study career and options |
Study materials | Certified teachers with in depth knowledge about the subject. |
Service | World's best service |
Platform
Na bestelling van je training krijg je toegang tot ons innovatieve leerplatform. Hier vind je al je gekochte (of gevolgde) trainingen, kan je eventueel cursisten aanmaken en krijg je toegang tot uitgebreide voortgangsinformatie.
FAQ
Niet gevonden wat je zocht? Bekijk alle vragen of neem contact op.