[PDF] [PDF] C programming - Tutorialspoint

This tutorial is designed for software programmers with a need to understand the C programming language starting from scratch This tutorial will give you enough



Previous PDF Next PDF





[PDF] C Programming Tutorial

C Language Overview This chapter describes the basic details about C programming language, how it emerged, what are strengths of C and why we should 



[PDF] An Introduction to the C Programming Language and Software Design

of this text is to cover topics on the C programming language and introductory What sets this book apart from most introductory C-programming texts is its strong emphasis Languages, 1993 http://cm bell-labs com/cm/cs/who/dmr/chist pdf



[PDF] LECTURE NOTE on PROGRAMMING IN “C” - VSSUT

\n"); return 0; } Output: welcome to c programming language Steps for Compiling and executing the Programs A compiler is a software program that analyzes a 



[PDF] C programming - Tutorialspoint

This tutorial is designed for software programmers with a need to understand the C programming language starting from scratch This tutorial will give you enough



[PDF] C Programming Tutorial

C Language Overview This chapter describes the basic details about C programming language, how it emerged, what are strengths of C and why we should 



[PDF] The C programming Language

You can do these things from a C program, of course, but you will be calling on services which are peculiar to your programming environment (compiler, processor 



[PDF] C Programming Tutorial pdf - Mark Burgess

Every program is limited by the language which is used to write it C is a and a programming tool which has grown popular because programmers like it



[PDF] A Complete Guide to Programming in C++ - LMPT

This book was written for readers interested in learning the C++ programming language from scratch, and for both novice and advanced C++ programmers



[PDF] The C programming Language - Skies & Universes

The C programming Language 3 Pointers and Arrays 4 Address Arithmetic 5 Character Pointers and Functions 6 Pointer Arrays; Pointers to Pointers 7



[PDF] Programming in C - IGM

Full Program: queue c r Exercises r Advanced Pointer Topics Pointers to Pointers r Command line input r Pointers to a Function r Exercises r q Low Level 

[PDF] progress on climate change

[PDF] progression langage oral cp ce1

[PDF] project on financial management for class 12

[PDF] project proposal application

[PDF] project report format for engineering

[PDF] projects on fourier series

[PDF] promenade dans paris confinement

[PDF] pronomi y e en esercizi

[PDF] pronoun

[PDF] proof of first order convexity condition

[PDF] proof of gamma function

[PDF] prop 8 california bar exam

[PDF] proper font size for essay

[PDF] properties of 2d shapes ks2

[PDF] properties of 3d shapes

C Programming Tutorial

i

C PROGRAMMING TUTORIAL

Simply Easy Learning by tutorialspoint.com

tutorialspoint.com ii

COPYRIGHT & DISCLAIMER NOTICE

All the content and graphics on this tutorial are the property of tutorialspoint.com. Any content from

tutorialspoint.com or this tutorial may not be redistributed or reproduced in any way, shape, or form without the

written permission of tutorialspoint.com. Failure to do so is a violation of copyright laws.

This tutorial may contain inaccuracies or errors and tutorialspoint provides no guarantee regarding the accuracy of

the site or its contents including this tutorial. If you discover that the tutorialspoint.com site or this tutorial

content contains some errors, please contact us at webmaster@tutorialspoint.com iii

Table of Contents

C Language Overview .............................................................. 1

Facts about C ............................................................................................... 1

Why to use C ? ............................................................................................. 2

C Programs .................................................................................................. 2

C Environment Setup ............................................................... 3

Text Editor ................................................................................................... 3

The C Compiler ............................................................................................ 3

Installation on Unix/Linux ............................................................................. 4

Installation on Mac OS .................................................................................. 4

Installation on Windows ............................................................................... 4

C Program Structure ................................................................ 5

C Hello World Example ................................................................................. 5

Compile & Execute C Program ....................................................................... 6

C Basic Syntax ......................................................................... 7

Tokens in C .................................................................................................. 7

Semicolons ; ................................................................................................ 7

Comments ................................................................................................... 8

Identifiers .................................................................................................... 8

Keywords .................................................................................................... 8

Whitespace in C ........................................................................................... 9

C Data Types ......................................................................... 10

Integer Types ............................................................................................. 10

Floating-Point Types ................................................................................... 11

The void Type ............................................................................................ 12

C Variables ............................................................................ 13 Variable Declaration in C ................................ Error! Bookmark not defined. Variable Initialization in C ............................... Error! Bookmark not defined.

Lvalues and Rvalues in C ............................................................................. 15

C Constants and Literals ........................................................ 17

Integer literals ............................................................................................ 17

Floating-point literals .................................................................................. 18

Character constants .................................................................................... 18

iii

String literals .............................................................................................. 19

Defining Constants ..................................................................................... 19

The #define Preprocessor ...................................................................... 19

The const Keyword ................................................................................. 20

C Storage Classes ................................................................. 22

The auto Storage Class ................................................................................ 22

The register Storage Class ........................................................................... 22

The static Storage Class ............................................................................... 23

The extern Storage Class ............................................................................. 24

C Operators ........................................................................... 25

Arithmetic Operators .................................................................................. 25

Relational Operators................................................................................... 26

Logical Operators ....................................................................................... 28

Bitwise Operators ....................................................................................... 29

Assignment Operators ................................................................................ 31

Misc Operators հ sizeof & ternary .............................................................. 33

Operators Precedence in C .......................................................................... 33

Decision Making in C.............................................................. 35

if statement ............................................................................................... 36

Syntax ..................................................................................................... 36

Flow Diagram .......................................................................................... 36

Example .................................................................................................. 36

if...else statement ...................................................................................... 37

Syntax ..................................................................................................... 37

Flow Diagram .......................................................................................... 38

Example .................................................................................................. 38

The if...else if...else Statement ..................................................................... 39

Syntax ..................................................................................................... 39

Example .................................................................................................. 39

Nested if statements .................................................................................. 40

Syntax ..................................................................................................... 40

Example .................................................................................................. 40

switch statement ....................................................................................... 41

Syntax ..................................................................................................... 41

Flow Diagram .......................................................................................... 42

Example .................................................................................................. 42

Nested switch statements ........................................................................... 43

Syntax ..................................................................................................... 43

Example .................................................................................................. 43

iii

The ? : Operator ......................................................................................... 44

C Loops .................................................................................. 45

while loop in C ........................................................................................... 46

Syntax ..................................................................................................... 46

Flow Diagram .......................................................................................... 46

Example .................................................................................................. 47

for loop in C ............................................................................................... 47

Syntax ..................................................................................................... 47

Flow Diagram .......................................................................................... 48

Example .................................................................................................. 48

do...while loop in C ..................................................................................... 49

Syntax ..................................................................................................... 49

Flow Diagram .......................................................................................... 50

Example .................................................................................................. 50

nested loops in C ........................................................................................ 51

Syntax ..................................................................................................... 51

Example .................................................................................................. 52

break statement in C .................................................................................. 53

Syntax ..................................................................................................... 53

Flow Diagram .......................................................................................... 53

Example .................................................................................................. 54

continue statement in C .............................................................................. 54

Syntax ..................................................................................................... 54

Flow Diagram .......................................................................................... 55

Example .................................................................................................. 55

goto statement in C .................................................................................... 56

Syntax ..................................................................................................... 56

Flow Diagram .......................................................................................... 56

Example .................................................................................................. 57

The Infinite Loop ........................................................................................ 57

C Functions ............................................................................ 59

Defining a Function .................................................................................... 59

Example .................................................................................................. 60

Function Declarations ................................................................................. 60

Calling a Function ....................................................................................... 60

Function Arguments ................................................................................... 61

Function call by value ............................................................................. 62

Function call by reference ....................................................................... 63

C Scope Rules ....................................................................... 65 iii

Local Variables ........................................................................................... 65

Global Variables ......................................................................................... 66

Formal Parameters ..................................................................................... 67

Initializing Local and Global Variables ........................................................... 67

C Arrays ................................................................................. 69

Declaring Arrays ......................................................................................... 69

Initializing Arrays ........................................................................................ 70

Accessing Array Elements ............................................................................ 70

Multi-dimensional Arrays ............................................................................ 71

Two-Dimensional Arrays ............................................................................. 71

Initializing Two-Dimensional Arrays .............................................................. 72

Accessing Two-Dimensional Array Elements ................................................. 72 Passing Arrays as Function Arguments .......................................................... 73

Way-1 ...................................................................................................... 73

Way-2 ...................................................................................................... 74

Way-3 ....................................................................................................... 74

Example .................................................................................................. 74

Return array from function.......................................................................... 75

Pointer to an Array ..................................................................................... 77

C Pointers .............................................................................. 79

What Are Pointers? .................................................................................... 80

How to use Pointers? .................................................................................. 80

NULL Pointers in C ...................................................................................... 81

Pointer arithmetic ...................................................................................... 81

Incrementing a Pointer ............................................................................... 82

Decrementing a Pointer .............................................................................. 83

Pointer Comparisons .................................................................................. 83

Array of pointers ........................................................................................ 84

Pointer to Pointer ....................................................................................... 86

Passing pointers to functions ....................................................................... 87

Return pointer from functions ..................................................................... 88

C Strings ................................................................................ 91 C Structures ........................................................................... 94

Defining a Structure .................................................................................... 94

Accessing Structure Members ..................................................................... 95 Structures as Function Arguments ............................................................... 96

Pointers to Structures ................................................................................. 97

C Unions .............................................................................. 100

Defining a Union ...................................................................................... 100

iii Accessing Union Members ........................................................................ 101 Bit Fields .............................................................................. 103

Bit Field Declaration ................................................................................. 104

Typedef ................................................................................ 106

typedef vs #define .................................................................................... 107

Input & Output ...................................................................... 108

The Standard Files .................................................................................... 108

The getchar() & putchar() functions ........................................................... 108

The gets() & puts() functions ..................................................................... 109

The scanf() and printf() functions ............................................................... 110

File I/O ................................................................................. 111

Opening Files ........................................................................................... 111

Closing a File ............................................................................................ 112

Writing a File ........................................................................................... 112

Reading a File........................................................................................... 113

Binary I/O Functions ................................................................................. 114

Preprocessors ...................................................................... 115

Preprocessors Examples ............................................................................ 115

Predefined Macros ................................................................................... 116

Preprocessor Operators ............................................................................ 117

Macro Continuation (\) .......................................................................... 117

Stringize (#) ........................................................................................... 117

Token Pasting (##)................................................................................ 118

The defined() Operator ......................................................................... 118

Parameterized Macros .............................................................................. 119

Header Files ......................................................................... 120

Include Syntax .......................................................................................... 120

Include Operation .................................................................................... 121

Once-Only Headers .................................................................................. 121

Computed Includes................................................................................... 122

Type Casting ........................................................................ 123

Integer Promotion .................................................................................... 124

Usual Arithmetic Conversion ..................................................................... 124

Error Handling ...................................................................... 126

The errno, perror() and strerror() ............................................................... 126

Divide by zero errors ................................................................................ 127

Program Exit Status .................................................................................. 128

Recursion ............................................................................. 129

Number Factorial ..................................................................................... 129

iii

Fibonacci Series ....................................................................................... 130

Variable Arguments .............................................................. 131 Memory Management .......................................................... 133 Allocating Memory Dynamically ................................................................. 133 Resizing and Releasing Memory ................................................................. 134 Command Line Arguments ................................................... 136

TUTORIALS POINT

Simply Easy Learning Page 1

C Language Overview

This chapter describes the basic details about C programming language, how it emerged, what are strengths of C and why we should use C. The C programming language is a general-purpose, high-level language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. C was originally first implemented on the DEC PDP-11 computer in 1972. In 1978, Brian Kernighan and Dennis Ritchie produced the first publicly available description of C, now known as the K&R standard. The UNIX operating system, the C compiler, and essentially all UNIX applications programs have been written in C. The C has now become a widely used professional language for various reasons.

Easy to learn

Structured language

It produces efficient programs.

It can handle low-level activities.

It can be compiled on a variety of computer platforms.

Facts about C

C was invented to write an operating system called UNIX. C is a successor of B language, which was introduced around 1970. The language was formalized in 1988 by the American National Standard Institute. (ANSI).

The UNIX OS was totally written in C by 1973.

CHAPTER 1

TUTORIALS POINT

Simply Easy Learning Page 2

Today, C is the most widely used and popular System Programming Language. Most of the state-of-the-art softwares have been implemented using C. Today's most ][popular Linux OS and RBDMS MySQL have been written in C.

Why to use C?

C was initially used for system development work, in particular the programs that make up the operating system. C was adopted as a system development language because it produces code that runs nearly as fast as code written in assembly language. Some examples of the use of C might be:

Operating Systems

Language Compilers

Assemblers

Text Editors

Print Spoolers

Network Drivers

Modern Programs

Databases

Language Interpreters

Utilities

C Programs

A C program can vary from 3 lines to millions of lines and it should be written into one or more text files with extension ".c"; for example, hello.c. You can use "vi", "vim" or any other text editor to write your C program into a file. This tutorial assumes that you know how to edit a text file and how to write source code using any programming language.

TUTORIALS POINT

Simply Easy Learning Page 3

C Environment Setup

This section describes how to set up your system environment before you start doing your programming using C language. Before you start doing programming using C programming language, you need the following two softwares available on your computer, (a) Text Editor and (b) The C Compiler.

Text Editor

This will be used to type your program. Examples of few editors include Windows Notepad, OS Edit command, Brief, Epsilon, EMACS, and vim or vi. Name and version of text editor can vary on different operating systems. For example, Notepad will be used on Windows, and vim or vi can be used on windows as well as Linux or UNIX.

The files you create with your editor are called source files and contain program source

code. The source files for C programs are typically named with the extension ³.c´. Before starting your programming, make sure you have one text editor in place and you have enough experience to write a computer program, save it in a file, compile it and finally execute it.

The C Compiler

The source code written in source file is the human readable source for your program. It needs to be "compiled", to turn into machine language so that your CPU can actually execute the program as per instructions given. This C programming language compiler will be used to compile your source code into final executable program. I assume you have basic knowledge about a programming language compiler. Most frequently used and free available compiler is GNU C/C++ compiler, otherwise you can have compilers either from HP or Solaris if you have respective Operating Systems. Following section guides you on how to install GNU C/C++ compiler on various OS. I'm mentioning C/C++ together because GNU gcc compiler works for both C and C++ programming languages.

CHAPTER 2

TUTORIALS POINT

Simply Easy Learning Page 4

Installation on UNIX/Linux

If you are using Linux or UNIX, then check whether GCC is installed on your system by entering the following command from the command line: $ gcc -v If you have GNU compiler installed on your machine, then it should print a message something as follows:

Using built-in specs.

Target: i386-redhat-linux

Configured with: ../configure --prefix=/usr .......

Thread model: posix

gcc version 4.1.2 20080704 (Red Hat 4.1.2-46) If GCC is not installed, then you will have to install it yourself using the detailed instructions available athttp://gcc.gnu.org/install/ This tutorial has been written based on Linux and all the given examples have been compiled on Cent OS flavor of Linux system.

Installation on Mac OS

If you use Mac OS X, the easiest way to obtain GCC is to download the Xcode development environment from Apple's web site and follow the simple installation instructions. Once you have Xcode setup, you will be able to use GNU compiler for C/C++. Xcode is currently available at developer.apple.com/technologies/tools/.

Installation on Windows

To install GCC at Windows you need to install MinGW. To install MinGW, go to the MinGW homepage, www.mingw.org, and follow the link to the MinGW download page. Download the latest version of the MinGW installation program, which should be named MinGW- .exe. While installing MinWG, at a minimum, you must install gcc-core, gcc-g++, binutils, and the MinGW runtime, but you may wish to install more.quotesdbs_dbs21.pdfusesText_27