C Programming Proficiency (Advanced Level)

  • 20m
  • 20 questions
The C Programming Proficiency benchmark will measure your ability to perform various file operations and recognize the steps for compiling a C program, including creating macros with preprocessor directives, controlling conditional compilation, and using pragmas to alter compiler settings. You will be assessed on your skills, including working with C strings using character arrays, library functions, and header files; understanding and performing type conversions; and using command-line arguments in C programs. A learner who scores high on this benchmark demonstrates that they have the necessary skills to implement file handling, perform string operations, and create macros.

Topics covered

  • add guardrails against multiple inclusions for header files
  • add strings to character pointers
  • compare the read, write, and append modes
  • create file handlers
  • create strings as pointers
  • explore the #ifdef, #ifndef, and #undef preprocessor directives
  • identify fopen() file modes
  • identify implicit type conversions
  • outline the process of creating macros and reviewing the preprocess output of code containing macros
  • position a file pointer using the ftell() and fseek() functions
  • read in data using r+, w+, and a+ modes
  • read in structured data
  • recognize preprocessor directives
  • reference user-defined header files
  • use command-line input arguments
  • use conditional pre-processor directives
  • utilize pragmas to manage warnings
  • write out and read in structs from binary files
  • write out binary data using fwrite()
  • write out structured data