Home Blog Program in C to print Hello World

Program in C to print Hello World

0
Program in C to print Hello World

Probably the best way to start learning a programming language is by writing a program. Therefore, here is our first program:

// my first program in C to print Hello World

#include <stdio.h>

int main(void)
{
printf("Hello World\n");

return 0;
}

Analysis of the above program:

// my first program in C to print Hello World

This is a comment line. All lines beginning with two slash signs (//) are considered comments and do not have any effect on the behavior of the program. The programmer can use them to include short explanations or observations within the source code itself. In this case, the line is a brief description of what our program is.

#include <stdio.h>

This first line of the program is a preprocessing directive, #include. This causes the preprocessor ? the first tool to examine source code when it is compiled ? to substitute for that line the entire text of the file to which it refers. In this case, the header stdio.h, which contains declarations for standard input and output functions such as printf, will replace that line. The angle brackets surrounding stdio.h indicate that stdio.h can be found using an implementation-defined search strategy. Double quotes may also be used for headers, thus allowing the implementation to supply (up to) two strategies. Typically, angle brackets are reserved for headers supplied by the implementation, and double quotes for local or installation-specific headers.

int main(void)

This next line indicates that a function named main is being defined. The main function serves a special purpose in C programs: When the program is executed, main is the function called by the run-time environment?otherwise it acts like any other function in the program. The type specifier int indicates that the return value, the value of evaluating the main function that is returned to its invoker (in this case the run-time environment), is an integer. The keyword (void) in between the parentheses indicates that the main function takes no arguments. See also void.

{

This opening curly brace indicates the beginning of the definition of the main function.

printf(“Hello World\n”);

This line calls (executes the code for) a function named printf, which is declared in the included header stdio.h and supplied from a system library. In this call, the printf function is passed (provided with) a single argument, the address of the first character in the string literal “Hello World\n”. The string literal is an unnamed array with elements of type char, set up automatically by the compiler with a final 0-valued character to mark the end of the array (printf needs to know this). The \n is an escape sequence that C translates to the newline character, which on output signifies the beginning of the next line. The return value of the printf function is of type int, but no use was made of it so it will be quietly discarded. (A more careful program might test this value to determine whether the operation succeeded.)

return 0;

This line terminates the execution of the main function and causes it to return the integral value 0, which is interpreted by the run-time system as an exit code indicating successful execution.

}

This closing curly brace indicates the end of the code for the main function.

If the above code were compiled and executed, it would do the following:

Print the string “hello, world” onto the standard output device (typically but not always a terminal), Move the current position indicator to the beginning of the next line, then Return a “successful” exit status to the calling process (such as a command shell or script).

LEAVE A REPLY

Please enter your comment!
Please enter your name here