SlideShare a Scribd company logo
What does 'using namespace std' mean in C++?
Suppose In u r class, if there are two persons with same name
vinod, and if u want to call one person, how will u call him ?? Whenever we
need to differentiate them (in case of more members ) definitely we would have
to use some additional information along with their name, like surname or the
area (if they live in different area) or their mother or father name, etc.
Same situation arises here. Suppose in u r code , If u had declare
the function with name say abc(), and there is some other library available
with the same function name and if u include that library in u r code , Then the
compiler has no way of thinking which xyz() function u r referring in the code.
In order to overcome this difficulty Namespace is introduced.
Namespace:
Namespace is a container for a set of identifiers (names of
variables, functions , classes) . It puts the names of its members in a distinct
space so that they don't conflict with the names in other namespaces or global
namespace.
For example :
1.
namespace myname
Also See more posts : www.comsciguide.blogspot.com
{
int a, b;
}
In this case, the variables a and b are normal variables declared
within a namespace called myname.
These variables can be accessed from within their namespace
normally, with their identifier (either a or b), but if accessed from outside the
myname namespace they have to be properly qualified with the scope operator
::. For example, to access the previous variables from outside myname they
should be qualified like:
myname::a
myname::b
Example 2.
#include <iostream>
using namespace std;
namespace first_space // first name space
{
void func()
{
cout << "Inside first_space" << endl;
}
}
namespace second_space // second name space
{
void func()
{
cout << "Inside second_space" << endl;
}
}
int main ()
{
first_space::func(); // Calls function from first name space.
Also See more posts : www.comsciguide.blogspot.com
second_space::func(); // Calls function from second name space
}
output :
Inside first_space
Inside second_space
The concept can be depicted using the following diagram:
Also See more posts : www.comsciguide.blogspot.com
Generally most of them will use the standard namespace with the following
declaration :
using namespace std;
 We can access functions and variables with the scope operator in the
same way.
#include <iostream>
using namespace std;
namespace me
{
int value()
{
return 5;
}
}
namespace me1
{
const double pi = 3.1416;
double value()
{
return 2*pi;
}
}
int main ()
{
cout << me::value() << 'n';
cout << me1::value() << 'n';
cout << me1::pi << 'n';
}
Also See more posts : www.comsciguide.blogspot.com
 Namespaces can be split :
◦ Two segments of a code can be declared in the same namespace i.e.
We can have more than one namespace of the same name. This gives
the advantage of defining the same namespace in more than one file
(although they can be created in the same file as well).
#include<iostream>
using namespace std;
namespace mynamespace
{
int x;
}
namespace mynamespace
{
int y;
}
It tells that in the same namespace two variables are declared
seperately. Ofcouse u might think why declaring seperately in same file,
this will help a lot while declaring the same namespace in different files.
 We can have anonymous namespaces (namespace with no name). They
are directly usable in the same program and are used for declaring unique
identifiers.
Also See more posts : www.comsciguide.blogspot.com
Take a look with an example :
#include<iostream>
using namespace std;
namespace
{
int local;
}
int main()
{
local = 1;
cout << "Local=" << local << endl;
return 0;
}
Here , as there is no name for namespace , we won't be using the scope
operator
It also avoids making global static variable.
Take a look with an example :
// this is h1.h file and u need to save it as “.h “
namespace
{
int local1; // as it is anonymous, the namespace is
visible only upto this file
}
void func()
{
local1 = 2;
}
// this is main file
#include<iostream>
Also See more posts : www.comsciguide.blogspot.com
#include"h1.h"
using namespace std;
void func();
namespace
{
int local=1;
}
int main()
{
local =3;
local1=4;
cout << "Local=" << local << endl;
func();
cout << "Local1=" << local1 << endl;
return 0;
}
 Namespace aliasing :
It is also possible to declare an alternate name for an existing
namespace.
We can use the following format:
namespace new_name = current_name;
For example:
Also See more posts : www.comsciguide.blogspot.com
#include<iostream>
using namespace std; // this namespace is for endl and cout
namespace m
{
int local=1;
}
namespace s=m; // creating alternate name for namespace
int main()
{
cout << "Local=" << s::local << endl;
cout << "Local=" << m::local << endl;
return 0;
}
Output:
1
1
 C++ has a default namespace named std, which contains all the default
library of the C++.
USING A NAMESPACE
There are 3 ways to use a namespace in program.
 Scope resolution
 with “ Using” directive
Also See more posts : www.comsciguide.blogspot.com
 with “ Using” declaration
1. SCOPE RESOLUTION :
From the name itself u have got some idea ..
Any name (identifier) declared in a namespace can be explicitly
specified using the namespace's name and the scope resolution :: operator with
the identifier.
Take a look with an example :
#include<iostream>
using namespace std;
namespace m
{
int local = 1;
}
namespace n
{
char a='A';
}
int main()
{
int local=2;
cout << local << endl;
cout << m::local << endl; // scope resolution
cout << n::a << endl;
return 0;
}
Also See more posts : www.comsciguide.blogspot.com
2.WITH “USING” DECLARATION :
The keyword USING introduces a name into the current declarative
region (such as a block) . With this using declaration we can import a specific
name in that block .
Take a look with an example :
#include <iostream>
using namespace std;
namespace first
{
int x = 5;
int y = 10;
}
namespace second
{
double x = 3.1416;
double y = 2.7183;
}
int main ()
{
using first::x; // using declaration
using second::y; // using declaration
Also See more posts : www.comsciguide.blogspot.com
cout << x << 'n';
cout << y << 'n';
cout << first::y << 'n';
cout << second::x << 'n';
return 0;
}
 Suppose if u put using declaration in a block, then it will be visible only
in that block.
 U can access the namespace from other files also.
Try yourself this one and check the output.
int main ()
{
{
using first::x;
}
using second::y;
cout << x << 'n';
cout << y << 'n';
return 0;
}
3.WITH USING DIRECTIVE :
Also See more posts : www.comsciguide.blogspot.com
With using keyword u can import only one variable at a
time.But with using derivative , allows you to import an entire namespace
into the program with global scope . It can be used to import a namespace
into another namespace or any program.
#include <iostream>
using namespace std;
namespace first
{
int x = 5;
int y = 10;
}
namespace second
{
double x = 3.1416;
double y = 2.7183;
}
int main ()
{
using namespace first; // using directive
cout << x << 'n';
cout << y << 'n';
cout << second::x << 'n';
cout << second::y << 'n';
return 0;
}
Also See more posts : www.comsciguide.blogspot.com
using and using namespace have validity only in the
same block in which they are stated or in the entire source code file if
they are used directly in the global scope. For example, it would be
possible to first use the objects of one namespace and then those of
another one by splitting the code in different blocks.
#include <iostream>
using namespace std;
namespace first
{
int x = 5;
}
namespace second
{
double x = 3.1416;
}
int main ()
{
{ // using directive in 1st
block
using namespace first;
cout << x << 'n';
}
{ // using directive in 2nd
block
using namespace second;
cout << x << 'n';
}
return 0;
}
Name imported with using declaration can override the name imported
with using derivative
#include <iostream>
using namespace std;
namespace first
{
void f()
Also See more posts : www.comsciguide.blogspot.com
{
cout<<"this is fun 1F";
}
void g()
{
cout<<"this is fun 1G";
}
}
namespace second
{
void f()
{
cout<<"this is fun 2F";
}
void g()
{
cout<<"this is fun 2G";
}
}
int main ()
{
using namespace first; // using directive
using second::f; // using declaration
f(); // calls f() of second namespace
return 0;
}
Nested Namespaces :
Namespaces can be nested where you can define one namespace
inside another name space as follows:
namespace name1
{
namespace name2 // namespace name2 is in the block of
namespace name1
{
fun();
}
Also See more posts : www.comsciguide.blogspot.com
}
One can access members of nested namespace by using scope operators as
follows:
using namespace name1::name2; // to access members of name2
using namespace name1; // to access members of name1
Take a look with an example :
#include <iostream>
using namespace std;
namespace name1
{
void func()
{
cout << "Inside name1" << endl;
}
namespace name2
{
void func()
{
cout << "Inside name2" << endl;
}
}
}
int main ()
{
using namespace name1::name2;
func(); // This calls function from name2 namespace.
return 0;
}
The result of this program should be: ???
FOR REFERENCES :
Also See more posts : www.comsciguide.blogspot.com
1. Programs those work in C but not in C++
2. Difference between malloc(),calloc(),realloc()
3. Dynamic memory allocation (Stack vs Heap)
4. 3 ways to solve recurrence relations
5. Difference between Balanced,Ordered,Full,Strict,Complete,Perfect Binary tree
6. Graph Terminology
7. How analysis of algorithms is done?
8. EXTERN - wherever u define variables, it will get access to them
9. TYPEDEF - create variables by name
10. Comma - the lowest priority operator
Also See more posts : www.comsciguide.blogspot.com

More Related Content

PPTX
Unix shell scripts
PDF
Introduction to Functional Programming
PPTX
Bash Shell Scripting
PPTX
Linux basics
ODP
Shellscripting
PPT
Using Unix
PDF
Advanced perl finer points ,pack&amp;unpack,eval,files
PPT
Linux shell scripting
Unix shell scripts
Introduction to Functional Programming
Bash Shell Scripting
Linux basics
Shellscripting
Using Unix
Advanced perl finer points ,pack&amp;unpack,eval,files
Linux shell scripting

What's hot (20)

PDF
Linux intro 4 awk + makefile
PPTX
Python Programming Essentials - M25 - os and sys modules
PPTX
Basics of shell programming
PDF
Termux commands-list
PDF
Basic linux commands
PPTX
Python Programming Essentials - M8 - String Methods
PPT
Learning sed and awk
PDF
Linux intro 3 grep + Unix piping
PPTX
Pipes and filters
PPTX
system management -shell programming by gaurav raikar
PPT
Talk Unix Shell Script 1
PDF
Linux intro 5 extra: awk
PPT
Unix And C
DOCX
40 basic linux command
PPT
PPTX
Linux Commands
PPT
Shell programming
PPTX
Easiest way to start with Shell scripting
PDF
Shell scripting
PPTX
Bash shell scripting
Linux intro 4 awk + makefile
Python Programming Essentials - M25 - os and sys modules
Basics of shell programming
Termux commands-list
Basic linux commands
Python Programming Essentials - M8 - String Methods
Learning sed and awk
Linux intro 3 grep + Unix piping
Pipes and filters
system management -shell programming by gaurav raikar
Talk Unix Shell Script 1
Linux intro 5 extra: awk
Unix And C
40 basic linux command
Linux Commands
Shell programming
Easiest way to start with Shell scripting
Shell scripting
Bash shell scripting
Ad

Similar to Namespace--defining same identifiers again (20)

PPTX
Namespace in C++ Programming Language
PPTX
Namespace1
DOCX
18 dec pointers and scope resolution operator
PPT
Namespace
PPT
Java oops PPT
PPT
025466482929 -OOP with Java Development Kit.ppt
PPT
02-OOP with Java.ppt
PPTX
Class and object
PPTX
Licão 13 functions
PPTX
Object Oriented Programming Using C++: C++ Namespaces.pptx
PPTX
Inheritance
PPTX
Introducing PHP Latest Updates
PDF
CS225_Prelecture_Notes 2nd
PDF
Global objects in Node.pdf
PPTX
Lecture 8_Libraries.pptx
PPTX
VP-303 lecture#9.pptx
PPTX
sSCOPE RESOLUTION OPERATOR.pptx
PPTX
Presentation.pptx
PPTX
Lecture 4.2 c++(comlete reference book)
PPTX
3namespace in c#
Namespace in C++ Programming Language
Namespace1
18 dec pointers and scope resolution operator
Namespace
Java oops PPT
025466482929 -OOP with Java Development Kit.ppt
02-OOP with Java.ppt
Class and object
Licão 13 functions
Object Oriented Programming Using C++: C++ Namespaces.pptx
Inheritance
Introducing PHP Latest Updates
CS225_Prelecture_Notes 2nd
Global objects in Node.pdf
Lecture 8_Libraries.pptx
VP-303 lecture#9.pptx
sSCOPE RESOLUTION OPERATOR.pptx
Presentation.pptx
Lecture 4.2 c++(comlete reference book)
3namespace in c#
Ad

More from Ajay Chimmani (20)

PDF
24 standard interview puzzles - Secret mail puzzle
PDF
24 standard interview puzzles - The pot of beans
PDF
24 standard interview puzzles - How strog is an egg
PDF
24 standard interview puzzles - 4 men in hats
PDF
Aptitude Training - TIME AND DISTANCE 3
PDF
Aptitude Training - PIPES AND CISTERN
PDF
Aptitude Training - PROFIT AND LOSS
PDF
Aptitude Training - SOLID GEOMETRY 1
PDF
Aptitude Training - SIMPLE AND COMPOUND INTEREST
PDF
Aptitude Training - TIME AND DISTANCE 4
PDF
Aptitude Training - TIME AND DISTANCE 1
PDF
Aptitude Training - PROBLEMS ON CUBES
PDF
Aptitude Training - RATIO AND PROPORTION 1
PDF
Aptitude Training - PROBABILITY
PDF
Aptitude Training - RATIO AND PROPORTION 4
PDF
Aptitude Training - NUMBERS
PDF
Aptitude Training - RATIO AND PROPORTION 2
PDF
Aptitude Training - PERMUTATIONS AND COMBINATIONS 2
PDF
Aptitude Training - PERCENTAGE 2
PDF
Aptitude Training - PERCENTAGE 1
24 standard interview puzzles - Secret mail puzzle
24 standard interview puzzles - The pot of beans
24 standard interview puzzles - How strog is an egg
24 standard interview puzzles - 4 men in hats
Aptitude Training - TIME AND DISTANCE 3
Aptitude Training - PIPES AND CISTERN
Aptitude Training - PROFIT AND LOSS
Aptitude Training - SOLID GEOMETRY 1
Aptitude Training - SIMPLE AND COMPOUND INTEREST
Aptitude Training - TIME AND DISTANCE 4
Aptitude Training - TIME AND DISTANCE 1
Aptitude Training - PROBLEMS ON CUBES
Aptitude Training - RATIO AND PROPORTION 1
Aptitude Training - PROBABILITY
Aptitude Training - RATIO AND PROPORTION 4
Aptitude Training - NUMBERS
Aptitude Training - RATIO AND PROPORTION 2
Aptitude Training - PERMUTATIONS AND COMBINATIONS 2
Aptitude Training - PERCENTAGE 2
Aptitude Training - PERCENTAGE 1

Recently uploaded (20)

PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
Basic Mud Logging Guide for educational purpose
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PPTX
Cell Structure & Organelles in detailed.
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Pre independence Education in Inndia.pdf
PDF
VCE English Exam - Section C Student Revision Booklet
PDF
Classroom Observation Tools for Teachers
PPTX
Cell Types and Its function , kingdom of life
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
Complications of Minimal Access Surgery at WLH
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Basic Mud Logging Guide for educational purpose
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
O5-L3 Freight Transport Ops (International) V1.pdf
O7-L3 Supply Chain Operations - ICLT Program
Module 4: Burden of Disease Tutorial Slides S2 2025
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Final Presentation General Medicine 03-08-2024.pptx
Renaissance Architecture: A Journey from Faith to Humanism
Cell Structure & Organelles in detailed.
human mycosis Human fungal infections are called human mycosis..pptx
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
102 student loan defaulters named and shamed – Is someone you know on the list?
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Pre independence Education in Inndia.pdf
VCE English Exam - Section C Student Revision Booklet
Classroom Observation Tools for Teachers
Cell Types and Its function , kingdom of life
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Complications of Minimal Access Surgery at WLH

Namespace--defining same identifiers again

  • 1. What does 'using namespace std' mean in C++? Suppose In u r class, if there are two persons with same name vinod, and if u want to call one person, how will u call him ?? Whenever we need to differentiate them (in case of more members ) definitely we would have to use some additional information along with their name, like surname or the area (if they live in different area) or their mother or father name, etc. Same situation arises here. Suppose in u r code , If u had declare the function with name say abc(), and there is some other library available with the same function name and if u include that library in u r code , Then the compiler has no way of thinking which xyz() function u r referring in the code. In order to overcome this difficulty Namespace is introduced. Namespace: Namespace is a container for a set of identifiers (names of variables, functions , classes) . It puts the names of its members in a distinct space so that they don't conflict with the names in other namespaces or global namespace. For example : 1. namespace myname Also See more posts : www.comsciguide.blogspot.com
  • 2. { int a, b; } In this case, the variables a and b are normal variables declared within a namespace called myname. These variables can be accessed from within their namespace normally, with their identifier (either a or b), but if accessed from outside the myname namespace they have to be properly qualified with the scope operator ::. For example, to access the previous variables from outside myname they should be qualified like: myname::a myname::b Example 2. #include <iostream> using namespace std; namespace first_space // first name space { void func() { cout << "Inside first_space" << endl; } } namespace second_space // second name space { void func() { cout << "Inside second_space" << endl; } } int main () { first_space::func(); // Calls function from first name space. Also See more posts : www.comsciguide.blogspot.com
  • 3. second_space::func(); // Calls function from second name space } output : Inside first_space Inside second_space The concept can be depicted using the following diagram: Also See more posts : www.comsciguide.blogspot.com
  • 4. Generally most of them will use the standard namespace with the following declaration : using namespace std;  We can access functions and variables with the scope operator in the same way. #include <iostream> using namespace std; namespace me { int value() { return 5; } } namespace me1 { const double pi = 3.1416; double value() { return 2*pi; } } int main () { cout << me::value() << 'n'; cout << me1::value() << 'n'; cout << me1::pi << 'n'; } Also See more posts : www.comsciguide.blogspot.com
  • 5.  Namespaces can be split : ◦ Two segments of a code can be declared in the same namespace i.e. We can have more than one namespace of the same name. This gives the advantage of defining the same namespace in more than one file (although they can be created in the same file as well). #include<iostream> using namespace std; namespace mynamespace { int x; } namespace mynamespace { int y; } It tells that in the same namespace two variables are declared seperately. Ofcouse u might think why declaring seperately in same file, this will help a lot while declaring the same namespace in different files.  We can have anonymous namespaces (namespace with no name). They are directly usable in the same program and are used for declaring unique identifiers. Also See more posts : www.comsciguide.blogspot.com
  • 6. Take a look with an example : #include<iostream> using namespace std; namespace { int local; } int main() { local = 1; cout << "Local=" << local << endl; return 0; } Here , as there is no name for namespace , we won't be using the scope operator It also avoids making global static variable. Take a look with an example : // this is h1.h file and u need to save it as “.h “ namespace { int local1; // as it is anonymous, the namespace is visible only upto this file } void func() { local1 = 2; } // this is main file #include<iostream> Also See more posts : www.comsciguide.blogspot.com
  • 7. #include"h1.h" using namespace std; void func(); namespace { int local=1; } int main() { local =3; local1=4; cout << "Local=" << local << endl; func(); cout << "Local1=" << local1 << endl; return 0; }  Namespace aliasing : It is also possible to declare an alternate name for an existing namespace. We can use the following format: namespace new_name = current_name; For example: Also See more posts : www.comsciguide.blogspot.com
  • 8. #include<iostream> using namespace std; // this namespace is for endl and cout namespace m { int local=1; } namespace s=m; // creating alternate name for namespace int main() { cout << "Local=" << s::local << endl; cout << "Local=" << m::local << endl; return 0; } Output: 1 1  C++ has a default namespace named std, which contains all the default library of the C++. USING A NAMESPACE There are 3 ways to use a namespace in program.  Scope resolution  with “ Using” directive Also See more posts : www.comsciguide.blogspot.com
  • 9.  with “ Using” declaration 1. SCOPE RESOLUTION : From the name itself u have got some idea .. Any name (identifier) declared in a namespace can be explicitly specified using the namespace's name and the scope resolution :: operator with the identifier. Take a look with an example : #include<iostream> using namespace std; namespace m { int local = 1; } namespace n { char a='A'; } int main() { int local=2; cout << local << endl; cout << m::local << endl; // scope resolution cout << n::a << endl; return 0; } Also See more posts : www.comsciguide.blogspot.com
  • 10. 2.WITH “USING” DECLARATION : The keyword USING introduces a name into the current declarative region (such as a block) . With this using declaration we can import a specific name in that block . Take a look with an example : #include <iostream> using namespace std; namespace first { int x = 5; int y = 10; } namespace second { double x = 3.1416; double y = 2.7183; } int main () { using first::x; // using declaration using second::y; // using declaration Also See more posts : www.comsciguide.blogspot.com
  • 11. cout << x << 'n'; cout << y << 'n'; cout << first::y << 'n'; cout << second::x << 'n'; return 0; }  Suppose if u put using declaration in a block, then it will be visible only in that block.  U can access the namespace from other files also. Try yourself this one and check the output. int main () { { using first::x; } using second::y; cout << x << 'n'; cout << y << 'n'; return 0; } 3.WITH USING DIRECTIVE : Also See more posts : www.comsciguide.blogspot.com
  • 12. With using keyword u can import only one variable at a time.But with using derivative , allows you to import an entire namespace into the program with global scope . It can be used to import a namespace into another namespace or any program. #include <iostream> using namespace std; namespace first { int x = 5; int y = 10; } namespace second { double x = 3.1416; double y = 2.7183; } int main () { using namespace first; // using directive cout << x << 'n'; cout << y << 'n'; cout << second::x << 'n'; cout << second::y << 'n'; return 0; } Also See more posts : www.comsciguide.blogspot.com
  • 13. using and using namespace have validity only in the same block in which they are stated or in the entire source code file if they are used directly in the global scope. For example, it would be possible to first use the objects of one namespace and then those of another one by splitting the code in different blocks. #include <iostream> using namespace std; namespace first { int x = 5; } namespace second { double x = 3.1416; } int main () { { // using directive in 1st block using namespace first; cout << x << 'n'; } { // using directive in 2nd block using namespace second; cout << x << 'n'; } return 0; } Name imported with using declaration can override the name imported with using derivative #include <iostream> using namespace std; namespace first { void f() Also See more posts : www.comsciguide.blogspot.com
  • 14. { cout<<"this is fun 1F"; } void g() { cout<<"this is fun 1G"; } } namespace second { void f() { cout<<"this is fun 2F"; } void g() { cout<<"this is fun 2G"; } } int main () { using namespace first; // using directive using second::f; // using declaration f(); // calls f() of second namespace return 0; } Nested Namespaces : Namespaces can be nested where you can define one namespace inside another name space as follows: namespace name1 { namespace name2 // namespace name2 is in the block of namespace name1 { fun(); } Also See more posts : www.comsciguide.blogspot.com
  • 15. } One can access members of nested namespace by using scope operators as follows: using namespace name1::name2; // to access members of name2 using namespace name1; // to access members of name1 Take a look with an example : #include <iostream> using namespace std; namespace name1 { void func() { cout << "Inside name1" << endl; } namespace name2 { void func() { cout << "Inside name2" << endl; } } } int main () { using namespace name1::name2; func(); // This calls function from name2 namespace. return 0; } The result of this program should be: ??? FOR REFERENCES : Also See more posts : www.comsciguide.blogspot.com
  • 16. 1. Programs those work in C but not in C++ 2. Difference between malloc(),calloc(),realloc() 3. Dynamic memory allocation (Stack vs Heap) 4. 3 ways to solve recurrence relations 5. Difference between Balanced,Ordered,Full,Strict,Complete,Perfect Binary tree 6. Graph Terminology 7. How analysis of algorithms is done? 8. EXTERN - wherever u define variables, it will get access to them 9. TYPEDEF - create variables by name 10. Comma - the lowest priority operator Also See more posts : www.comsciguide.blogspot.com