C is a general purpose language with standards specified by the American National Standards Institute (ANSI). This course demonstrates how to work with various built-in functions and use format specifiers. It covers storage classes, volatile variables, data modifiers and dynamic memory allocation (DMA). It also covers how to use the C preprocessor to optimize C programs. In this course, the instructor uses some non-standard Microsoft extensions. In these instances, the instructor uses quotes around the library names rather than the standard symbols.
Learning Objectives
Working with Functions and Format Specifiers
- start the course
- use built in functions such as system(), delay(), and sleep() in C
- use built in functions ceil() and floor()
- use built in functions such as rand(), srand() to generate random value
- list the categories of maths' functions such as cos() in C and demonstrate their use
- use ctime to output date and time string using C
- use format specifiers in C
Storage Classes and Volatile Variables
- describe storage classes, and describe, and use storage class specifiers
- describe and use storage class modifiers
- use volatile variables in C
Data Modifiers
- describe the sign bit, use a signed data modifier to enable it for int or char data types, and use an unsigned modifier to disable it
- use the short and long modifiers and change format specifiers to change the data size of variables in C
Dynamic Memory Allocation
- describe dynamic memory allocation (DMA) and associated C functions and use dynamic memory allocation for strings in C
- use dynamic memory allocation for structures in C
- use dynamic memory allocation for arrays in C
- reallocate memory in C
- describe and generate linked lists using C
- manipulate linked lists using C
The C Preprocessor
- describe the C preprocessor, and contrast it with the compiler
- use the #define directive to define macros and use #undef to remove the definition in C programs
- use the #include directive in a C program to include files
- use conditional compilation directives in C programs
- use the #pragma directive in C
- use preprocessor directives such as _DATE_ , _TIME_, _FILE_, and _LINE_
- describe methods to debug C programs and use the assert macro
Practice: Optimizing and Debugging ANSI C Programs
- understand how to optimize and debug ANSI C programs
Framework Connections
Specialty Areas
- Software Development
Feedback
If you would like to provide feedback for this course, please e-mail the NICCS SO at NICCS@hq.dhs.gov.