chapter 3: introduction to c programming language c development environment a simple program example...

31
Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program comment and preprocessor directives basic data types data declarations – statements Basic functions

Upload: imogen-martha-mosley

Post on 23-Dec-2015

232 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Chapter 3: Introduction to C Programming Language

• C development environment• A simple program example• Characters and tokens• Structure of a C program

– comment and preprocessor directives

– basic data types

– data declarations

– statements

• Basic functions

Page 2: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

C Development Environment

Disk Phase 2 :Preprocessorprogramprocesses the code.

DiskCompilerPhase 3 :Compiler creates objectcode and stores it on Disk.

Preprocessor

Disk Linker Phase 4 :Linker links object code with libraries, creates a.out and stores it on Disk.

EditorPhase 1 :Program iscreated in theEditor and stored on Disk.

Disk

Page 3: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Loader Phase 5 :

:.

Primary Memory

Loader putsProgram inMemory

C P U Phase 6 :

:.

Primary Memory

CPU takes eachinstruction and executes it, storingnew data values asthe program executes.

Page 4: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

From code to executables

Pre-processor

Source Code

Compiler

Assembler

Linker

Libraries

Assembly Code

Object Code

Executable Code

Page 5: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

A Simple Program Example

#include <stdio.h>

main(){

printf("Programming in C is easy.\n");}

Sample Program OutputProgramming in C is easy.

Page 6: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

• NOTE ABOUT C PROGRAMS

In C, lowercase and uppercase characters are very important! All commands in C must be lowercase. The C programs starting point is identified by the word

main()This informs the computer as to where the program actually starts. The brackets that follow the keyword main indicate that there are no arguments supplied to this program (this will be examined later on).

The two braces, { and }, signify the begin and end segments of the program.

Page 7: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

The purpose of the statement#include <stdio.h>is to allow the use of the printf statement to provide program output. Text to be displayed by printf() must be enclosed in double quotes. The program has only one statement

printf("Programming in C is easy.\n");

printf() is actually a function (procedure) in C that is used for printing variables and text. Where text appears in double quotes "", it is printed without modification. There are some exceptions however.

Page 8: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

This has to do with the \ and % characters. These characters are modifiers, and for the present the \ followed by the n character represents a newline character.

Thus the program prints

Programming in C is easy.

and the cursor is set to the beginning of the next line. As we shall see later on, what follows the \ character will determine what is printed, ie, a tab, clear screen, clear line etc. Another important thing to remember is that all C statements are terminated by a semi-colon ;

Page 9: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

• Summary of major points so far program execution begins at main()

keywords are written in lower-case

statements are terminated with a semi-colon

text strings are enclosed in double quotes

Page 10: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Characters and tokens

• Characters are the basic building blocks in C program, equivalent to ‘letters’ in English language

• Includes every printable character on the standard English language keyboard except `, $ and @

• Example of characters:– Numeric digits: 0 - 9

– Lowercase/uppercase letters: a - z and A - Z

– Space (blank)

– Special characters: , . ; ? “ / ( ) [ ] { } * & % ^ < > etc

Page 11: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

• A token is a language element that can be used in forming higher level language constructs

• Equivalent to a ‘word’ in English language• Several types of tokens can be used to build a

higher level C language construct such as expressions and statements

• There are 6 kinds of tokens in C:– Reserved words (keywords)

– Identifiers

– Constants

– String literals

– Punctuators

– Operators

Page 12: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Reserved Words

• Keywords that identify language entities such as statements, data types, language attributes, etc.

• Have special meaning to the compiler, cannot be used as identifiers in our program.

• Should be typed in lowercase.• Example: const, double, int, main, void, while, for,

else (etc..)

Page 13: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Identifiers

• Words used to represent certain program entities (program variables, function names, etc).

• Example:– int my_name;

• my_name is an identifier used as a program variable

– void CalculateTotal(int value)• CalculateTotal is an identifier used as a function name

Page 14: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Constants

• Entities that appear in the program code as fixed values.

• 4 types of constants:– Integer constants

• Positive or negative whole numbers with no fractional part

• Example: – const int MAX_NUM = 10;

– const int MIN_NUM = -90;

– Floating-point constants• Positive or negative decimal numbers with an integer part, a

decimal point and a fractional part

• Example:– const double VAL = 0.5877e2; (stands for 0.5877 x 102)

Page 15: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

– Character constants• A character enclosed in a single quotation mark

• Example:– const char letter = ‘n’;

– const char number = ‘1’;

– printf(“%c”, ‘S’);

» Output would be: S

– Enumeration• Values are given as a list

• Example:enum Language {

Malay,English,Arabic

};

Page 16: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

String Literals

• A sequence of any number of characters surrounded by double quotation marks.

• Example:– “REFORMASI”

– “My name is Salman”

• Example of usage in C program:– printf(“My room number is BN-1-012\n”);

• Output: My room number is BN-1-012

Page 17: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Punctuators (separators)

• Symbols used to separate different parts of the C program.

• These punctuators include:– [ ] ( ) { } , ; “: * #

• Usage example:void main (void){

int num = 10;printf (“%i”, num);

}

Page 18: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Operators

• Tokens that result in some kind of computation or action when applied to variables or or other elements in an expression.

• Example of operators:– * + = - /

• Usage example:– result = total1 + total2;

Page 19: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Structure of a C program

#include <stdio.h>

void main (void){

printf(“\nHello World\n”);}

Preprocessor directive (header file)

Program statement

#include <stdio.h>#define VALUE 10

int global_var;

void main (void){

/* This is the beginning of the program */

int local_var;local_var = 5;global_var = local_var + VALUE;

printf (“Total sum is: %d\n”, global_var); // Print out the result}

} Preprocessor directive

Global variable declarationComments

Local variable declaration

Variable definition

Page 20: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Comments

• Explanations or annotations that are included in a program for documentation and clarification purpose.

• Completely ignored by the compiler during compilation and have no effect on program execution.

• Starts with ‘/*’ and ends with ‘*/’• Some compiler support comments starting with

‘//’

Page 21: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Preprocessor Directives

• The first thing to be checked by the compiler.• Starts with ‘#’.• Tell the compiler about specific options that it

needs to be aware of during compilation.• There are a few compiler directives. But only 2 of

them will be discussed here.– #include <stdio.h>

• Tell the compiler to include the file stdio.h during compilation

• Anything in the header file is considered a part of the program

– #define VALUE 10• Tell the compiler to substitute the word VALUE with 10

during compilation

Page 22: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Basic Data Types

• 3 examples of basic data types:– int (used to declare numeric program variables of

integer type)

– char (used to declare character variable)

– double (used to declare floating point variable)

• In addition, there are float, void, short, long, etc.• Declaration: specifies the type of a variable.

– Example: int local_var;

• Definition: assigning a value to the declared variable.– Example: local_var = 5;

Page 23: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

• A variable can be declared globally or locally.• A globally declared variable can be accessed from

all parts of the program.• A locally declared variable can only be accessed

from inside the function in which the variable is declared.

Page 24: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Statements

• A specification of an action to be taken by the computer as the program executes.

• In the previous example, there are 2 lines following variable declaration and variable definition that terminate with semicolon ‘;’. – global_var = local_var + VALUE;– printf (“Total sum is: %d\n”, global_var);

• Each line is a statement.

Page 25: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Basic Functions

• A C program consists of one or more functions that contain a group of statements which perform a specific task.

• A C program must at least have one function: the function main.

• We can create our own function or use the functions that has been created in the library, in which case we have to include the appropriate header file (example: stdio.h).

Page 26: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

• In this section, we will learn a few functions that are pre-defined in the header file stdio.h

• These functions are:– printf()

– scanf()

– getchar() & putchar()

• In addition to those functions, we will also learn about Format Specifier and Escape Sequence which are used with printf() and scanf().

Page 27: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

printf()

• Used to send data to the standard output (usually the monitor) to be printed according to specific format.

• General format:– printf(“control string”, variables);

• Control string is a combination of text, format specifier and escape sequence.

• Example:– printf(“Thank you”);

– printf (“Total sum is: %d\n”, global_var);• %d is a format specifier

• \n is an escape sequence

Page 28: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Format Specifier

No Format Specifier Output Type Output Example1 %d Signed decimal integer 762 %i Signed decimal integer 763 %o Unsigned octal integer 1344 %u Unsigned decimal integer 765 %x Unsigned hexadecimal (small letter) 9c6 %X Unsigned hexadecimal (capital letter) 9C7 %f Integer including decimal point 76.00008 %e Signed floating point (using e notation) 7.6000e+019 %E Signed floating point (using E notation) 7.6000E+01

10 %g The shorter between %f and %e 7611 %G The shorter between %f and %E 7612 %x Character ‘7’13 %s String ‘76'

Tells the printf() function the format of the output to be printed put.

Page 29: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

Escape Sequence

Escape Sequence Effect\a Beep sound\b Backspace\f Formfeed (for printing)\n New line\r Carriage return\t Tab\v Vertical tab\\ Backslash\” “ sign\o Octal decimal\x Hexadecimal\O NULL

Escape sequence is used in the printf() function to do something tothe output.

Page 30: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

scanf()

• Read data from the standard input device (usually keyboard) and store it in a variable.

• General format:– scanf(“Control string”, &variable);

• The general format is pretty much the same as printf() except that it passes the address of the variable (notice the & sign) instead of the variable itself to the second function argument.

• Example:int age;printf(“Enter your age: “);scanf(“%d”, &age);

Page 31: Chapter 3: Introduction to C Programming Language C development environment A simple program example Characters and tokens Structure of a C program –comment

getchar() and putchar()

• getchar() - read a character from standard input• putchar() - write a character to standard output• Example:

#include <stdio.h>

void main(void){ char my_char; printf(“Please type a character: “); my_char = getchar(); printf(“\nYou have typed this character: “); putchar(my_char);}