Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele How to Run the Program? | Introduction to C
C Basics

bookHow to Run the Program?

Note
Definition

A compiler is a specialized program that translates human-readable C source code into machine code, which the processor can execute. This translation process enables your written instructions to become an executable file that the computer understands and runs.

To transform our code into specific commands for the processor, you need a compiler. The compiler processes code sequentially, from top to bottom. The act of compilation goes through several stages:

  • Preprocessor Operation: all #include directives are processed, integrating external files, libraries, and other required components into your program;

  • Syntax Error Analysis: the compiler checks for syntax errors and halts the compilation if any mistakes are found, highlighting them for correction;

  • Compilation to Executable File: the program is translated into an executable file (e.g., .exe on Windows), allowing you to run it like any other application.

An executable file is simply a series of instructions (machine code) meant for the processor. For context, the phrase "Hello, c<>definity" in machine code might resemble a sequence.

program.exe

program.exe

copy
12
01001000011001010110110001101100011011110010110000100000011000110011110000111 110011001000110010101100110011010010110111001101001011101000111100100100001

An intentional error was added to the code below to demonstrate how the C compiler detects and reports issues.

Main.c

Main.c

copy
12345678
#include <stdio.h> int main() { printf("some text") // Error line return 0; }

The compiler expects a semicolon (;) at the end of the fifth line. Without it, the compiler doesn't recognize where the statement ends and treats return 0; as part of the same line. As a result, the error appears on the next line, even though the real issue is the missing semicolon after printf.

Main.c

Main.c

copy
12345678
#include <stdio.h> int main() { ;; ;;;;;; printf("C language\n");;; ;return 0; ;;; }

The C compiler is quite forgiving with extra semicolons. While they may look odd, multiple ; are treated as empty statements and don't affect the program's behavior. The code will still compile and run without issues, but it's good practice to avoid unnecessary semicolons to keep your code clean and readable.

question mark

What are the steps for compiling?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Can you explain more about each stage of the compilation process?

Why does the compiler report the error on the next line instead of where the semicolon is missing?

What happens if I forget to include a required library in my code?

Awesome!

Completion rate improved to 2.63

bookHow to Run the Program?

Pyyhkäise näyttääksesi valikon

Note
Definition

A compiler is a specialized program that translates human-readable C source code into machine code, which the processor can execute. This translation process enables your written instructions to become an executable file that the computer understands and runs.

To transform our code into specific commands for the processor, you need a compiler. The compiler processes code sequentially, from top to bottom. The act of compilation goes through several stages:

  • Preprocessor Operation: all #include directives are processed, integrating external files, libraries, and other required components into your program;

  • Syntax Error Analysis: the compiler checks for syntax errors and halts the compilation if any mistakes are found, highlighting them for correction;

  • Compilation to Executable File: the program is translated into an executable file (e.g., .exe on Windows), allowing you to run it like any other application.

An executable file is simply a series of instructions (machine code) meant for the processor. For context, the phrase "Hello, c<>definity" in machine code might resemble a sequence.

program.exe

program.exe

copy
12
01001000011001010110110001101100011011110010110000100000011000110011110000111 110011001000110010101100110011010010110111001101001011101000111100100100001

An intentional error was added to the code below to demonstrate how the C compiler detects and reports issues.

Main.c

Main.c

copy
12345678
#include <stdio.h> int main() { printf("some text") // Error line return 0; }

The compiler expects a semicolon (;) at the end of the fifth line. Without it, the compiler doesn't recognize where the statement ends and treats return 0; as part of the same line. As a result, the error appears on the next line, even though the real issue is the missing semicolon after printf.

Main.c

Main.c

copy
12345678
#include <stdio.h> int main() { ;; ;;;;;; printf("C language\n");;; ;return 0; ;;; }

The C compiler is quite forgiving with extra semicolons. While they may look odd, multiple ; are treated as empty statements and don't affect the program's behavior. The code will still compile and run without issues, but it's good practice to avoid unnecessary semicolons to keep your code clean and readable.

question mark

What are the steps for compiling?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 3
some-alt