Skip to content

Chapter 3: Programming Language and Its Applications

Syllabus: ACtE03
Coverage: ACtE0301 through ACtE0306
Status: DRAFT - syllabus and assigned-question pass complete; independent source audit pending

Exam use: Recognition of C/C++ syntax, semantics, object-model rules, files, templates, STL, and exception-handling facts for recall/concept/light-trace MCQs

Chapter map

Code Area Highest-yield recognition cues
ACtE0301 Introduction to C programming tokens, operators, I/O, control flow, arrays, strings, recursion
ACtE0302 Pointers, structure and data files in C pointer arithmetic, array relation, struct vs union, file modes
ACtE0303 C++ language constructs with objects and classes overloading, references, constructors, destructor, this, static, const, friend
ACtE0304 Features of object-oriented programming operator overloading, conversions, inheritance forms, ctor/dtor order
ACtE0305 Pure virtual function and file handling dynamic binding, abstract class, streams, flags, manipulators, file states
ACtE0306 Generic programming and exception handling templates, STL, try/catch/throw, rethrow, catch-all, noexcept

Chapter rapid-revision sheet

Trigger phrase Immediate association
"smallest meaningful C unit" token
"compares equality" ==
"single character input" getchar
"runs at least once" do-while
"string terminator" \0
"array decays" pointer to first element
"shared storage for members" union
"random access in file" fseek / ftell / rewind
"same name, different parameter list" overloading
"alias to existing object" reference
"current object pointer" this
"shared by all objects" static data member
"runtime dispatch through base interface" virtual function
"cannot instantiate directly" abstract class
"stream at end on every write" ios::app
"generic code by type" template
"rethrow current exception" throw;
"modern non-throwing declaration" noexcept

Assigned-question audit

The chapter was checked against set1-013 to set1-018 and set1-069 to set1-072. Each revised item has one technically valid answer and an explicit deciding language rule.

Target Deciding fact Result
set1-013 do and while are separate keywords; do-while is a construct name Supported by ACtE0301
set1-014 fwrite writes a specified number of fixed-size objects to an output stream Supported by ACtE0302
set1-015 a user-provided destructor is needed for directly owned resources requiring explicit cleanup Supported by ACtE0303
set1-016 inheritance reuses accessible base-class behavior Supported by ACtE0304
set1-017 among the choices, operator* may be a non-member friend; =, (), and -> must be members Supported by ACtE0304
set1-018 exceptions allow controlled propagation, cleanup, reporting, or recovery from runtime failures Supported by ACtE0306
set1-069 arr[i] equals *(arr + i); the third element uses offset 2 Supported by ACtE0302
set1-070 a friend can access private and protected members Supported by ACtE0303
set1-071 a constructor initializes an object Supported by ACtE0303
set1-072 setjmp saves the environment; longjmp performs the jump Supported by ACtE0306

Sources and verification note

Primary coverage authority is syllab.md. Technical content was aligned to standard C and C++ language/library references and mainstream textbooks.

Recommended verification sources for the pending independent audit:

  1. Brian W. Kernighan and Dennis M. Ritchie, The C Programming Language - core C syntax, operators, functions, arrays, pointers, structures, and file-stream concepts.
  2. ISO/IEC 9899 C standard family and standard library references - language-defined behavior, object/pointer distinctions, and standard I/O semantics.
  3. Bjarne Stroustrup, The C++ Programming Language - namespaces, references, classes, constructors, destructor, operator overloading, inheritance, templates, and exceptions.
  4. ISO/IEC 14882 C++ standard family and cppreference-aligned language/library behavior - modern noexcept, virtual dispatch, abstract classes, STL categories, and stream semantics.
  5. Herbert Schildt / Yashavant Kanetkar style teaching references were used only as secondary exam-style wording cross-checks, not as authority over the language standards.

This is a review-first edition. Where old textbook terminology conflicts with current standard terminology, the notes state the standard fact and explicitly mark obsolete constructs as such.