UNIT 1 : PROGRAMMING IN C++
Introduction to C++
Character Set - Set of characters which are recognized by c++compiler i.e
Digits (0-9), Alphabets (A-Z & a-z) and special characters + - * , . “ ‘ < > = { ( ] ) space etc i.e 256 ASCII characters.
Tokens- Smallest individual unit. Following are the tokens
i) First letter of identifier is always alphabet.
ii) Reserve word cannot be taken as identifier name.
iii) No special character in the name of identifier except under score sign ‘_’.
3. Literals-Value of specific data type assign to a variable or constant. Four type of Literals:
i) Integer Literal i.e int x =10
ii) Floating point Literal i.e float x=123.45
iii) Character Literal i.e char x= ‘a’, enclosed in single quotes and single character only.
iv) String Literal i.e cout<< “Welcome” , anything enclosed in double quotes
4. Operator – performs some action on data
o Arithmetic(+,-,*,/,%)
o Assignment operator (=)
o Increment / Decrement (++, --)
o Relational/comparison (<,>,<=,>=,==,!=).
o Logical(AND(&&),OR(||),NOT(!).
o Conditional (? :)
Precedence of operators:
Punctuation – used as separators in c++ e.g. [ { ( ) } ] , ; # = : etc
Data type- A specifier to create memory block of some specific size and type. C++offers two types of data types:
1) Fundamental type : Which are not composed any other data type i.e. int, char, float and void
2) Derived data type : Which are made up of fundamental data type i.e array, function, class, union etc.
Fig: Data types in C++.
Data type conversion- Conversion of one data type into another data type. Two type of conversion i.e
i) Implicit Conversion – It is automatically taken care by complier in the case of lower range to higher range e.g. int x, char c=’A’ then x=c is valid i.e character value in c
is automatically converted to integer.
ii) Explicit Conversion- It is user-defined that forces an expression to be of specific type. e.g. double x1,x2 and int res then res=int(x1+x2)
Variable- Memory block of certain size where value can be stored and changed during program execution. e.g. int x, float y, float amount, char c;
Constant- Memory block where value can be stored once but can’t changed later on during program execution.e.g. const int pi =3.14;
cout – It is an object of ostream_withassign class defined in iostream.h header file and used to display value on monitor.
cin – It is an object of istream_withassign class defined in iostream.h header file and used to read value from keyboard for specific variable.
comment- Used for better understanding of program statements and escaped by the compiler to compile . e.g. – single line (//) and multi- line(/*….*/)
Cascading – Repeatedly use of input or output operators( “>>” or “<<”) in one statement with cin or cout.
Control structure:
Note: any non-zero value of an expression is treated as true and exactly 0 (i.e. all bits contain 0) is treated as false.
Nested loop -loop within loop.
exit()- defined in process.h and used to terminate the program depending upon certain condition.
break- exit from the current loop depending upon certain condition. continue- to skip the remaining statements of the current loop and passes control to the next loop
control statement.
goto- control is unconditionally transferred to the location of local label specified by
<identifier>.
For example
A1:
cout<<”test”;
goto A1;
Some Standard C++ libraries
Some functions
Array- Collection of element of same type that are referred by a common name.
One Dimensional array
const int size =20;
int a[size] or int a[20]. The elements of array accessed with the help of an index.
For example : for(i=0;i<20;i++) cout<<a[i];
Two dimensional array
Declaration – int a[3][4], means ‘a’ is an array of integers are arranged in 3 rows & 4 columns.
Function -Name given to group of statements that does some specific task and may return a value. Function can be invoked(called) any no. of time and anywhere in the program.
Function prototypes-Function declaration that specifies the function name, return type and parameter list of the function.
syntax: return_type function_name(type var1,type var2,….,type varn );
Actual Parameters
Variables associated with function name during function call statement.
Formal Parameters
Variables which contains copy of actual parameters inside the function definition.
Local variables
Declared inside the function only and its scope and lifetime is function only and hence
accessible only inside function.
Global variables
Declared outside the function and its scope and lifetime is whole program and hence accessible to all function in the program from point declaration.
Example :
#include <iostream.h>
int a=20; // global
void main()
{
int b=10; // local
cout<<a<<b;
}
Passing value to function-
Passing by value- In this method separate memory created for formal arguments and if any changes done on formal variables , it will not affect the actual variables.So actual variables are preserved in this case
Passing by address/reference- In this method no separate memory created for formal variables i.e formal variables share the same location of actual variables and hence any change on formal variables automatically reflected back to actual variables.
Example :
void sample( int a, int &b)
{
a=a+100;
b=b+200;
cout<<a<<b;
}
void main()
{
int a=50, b=40;
cout<<a<<b; // output 50 40
sample(a,b) // output 150 240
cout<<a<<b; // output 50 240
}
Function overloading:
Processing of two or more functions having same name but different list of parameters.
Function recursion:
Function that call itself either directly or indirectly.
Structure- Collection of logically related different data types (Primitive and Derived) referenced
under one name.
e.g. struct employee
{
int empno;
char name[30];
char design[20];
char department[20];
}
Declaration: employee e;
Input /Output : cin>>e.empno; // members are accessed using dot(.) operator.
cout<<e.empno;
Nested structure
e.g.
struct address
{
int houseno;
char city[20];
char area[20];
long int pincode;}
struct employee
{
int empno;
char name[30];
char design[20];
char department[20];
address ad; // nested structure
}
Declaration: employee e;
Input /Output : cin>>e.ad.houseno; // members are accessed using dot(.) operator.
cout<<e.ad.houseno;
typedef
Used to define new data type name.
e.g. typedef char Str80[80]; Str80 str;
#define Directives
Use to define a constant number or macro or to replace an instruction.
Function overloading in C++
A function name having several definitions that are differentiable by the number or types of their arguments is known as function overloading.
Example : A same function print() is being used to print different data types:
#include <iostream.h>
class printData
{
public:
void print(int i) {
cout << "Printing int: " << i << endl;
}
void print(double f) {
cout << "Printing float: " << f << endl;
}
void print(char* c) {
cout << "Printing character: " << c << endl;
}
};
int main(void)
{
printData pd;
// Call print to print integer
pd.print(5);
// Call print to print float
pd.print(500.263);
// Call print to print character
pd.print("Hello C++");
return 0;
}
When the above code is compiled and executed, it produces following result:
Printing int: 5
Printing float: 500.263
Printing character: Hello C++
1. What is C programming language? |
2. What are the key features of C programming language? |
3. What are the advantages of learning C programming language? |
4. What are the basic data types in C programming language? |
5. What are the various control structures in C programming language? |
9 docs
|
|
Explore Courses for Class 12 exam
|