Nepal's open education portal

EduNepalEduNepal

C Programming — Complete Course Notes (BCA 1st Sem)

Comprehensive master notes covering fundamentals, syntax, control statements, arrays, pointers, structures, and file I/O for TU BCA 1st semester.

C Programming · CACS101 · Semester 1

BCA Curriculum 2079

Unit 3•Unit 3 of 6

Unit 3: 2. Compilation and Execution Process

The transition from human-readable C source code (.c) to an executable binary (.exe or ELF) consists of four sequential phases:

  1. Preprocessing (cpp): Expands macros (#define), strips comments, and includes header files (#include).
  2. Compilation (cc1): Converts preprocessed code into assembly instructions.
  3. Assembly (as): Translates assembly code into relocatable object code (.o or .obj).
  4. Linking (ld): Combines object files with C standard libraries (libc) to produce the final executable.

Related notes

View all →

Related video lessons

View all →

Practice questions

View all →
  • Which of the following is an invalid variable name in C? (a) _salary (b) 1st_rank (c) total_sum (d) age2objective · 1 marks
  • What is the return type of the `malloc()` function in C? (a) `int*` (b) `char*` (c) `void*` (d) `float*`objective · 1 marks
  • Explain the difference between call by value and call by reference in C with suitable code snippets.short · 5 marks
  • What is recursion? Write a recursive function in C to calculate the factorial of a positive integer.short · 5 marks
  • Explain dynamic memory allocation in C. Differentiate between `malloc()` and `calloc()`. Write a C program to dynamically allocate memory for N integers, sort them in ascending order, and free the memory.long · 10 marks

View all questions for this subject →

← Back to all notes