SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Page 1 of 6

Structures
What is a Structure?
Structure is a collection of variables under a single name. Variables can be of
any type: int, float, char etc. The main difference between structure and array is
that arrays are collections of the same data type and structure is a collection of
variables under a single name.

How to declare and create a Structure
Declaring a Structure:
The structure is declared by using the keyword struct followed by structure name,
also called a tag. Then the structure members (variables) are defined with their
type and variable names inside the open and close braces { and }. Finally, the
closed braces end with a semicolon denoted as ; following the statement. The
above structure declaration is also called a Structure Specifier.
Example:
Three variables: custnum of type int, salary of type int, commission of type float
are structure members and the structure name is Customer. This structure is
declared as follows:

In the above example, it is seen that variables of different types such as int and
float
are
grouped
in
a
single
structure
name
Customer.
Arrays behave in the same way, declaring structures does not mean that memory
is allocated. Structure declaration gives a skeleton or template for the structure.
After declaring the structure, the next step is to define a structure variable.

Prepared By Sumit Kumar Gupta, PGT Computer Science
Page 2 of 6

How to declare Structure Variable?
This is similar to variable declaration. For variable declaration, data type is
defined followed by variable name. For structure variable declaration, the data
type is the name of the structure followed by the structure variable name.
In the above example, structure variable cust1 is defined as:

What happens when this is defined? When structure is defined, it allocates or
reserves space in memory. The memory space allocated will be cumulative of all
defined structure members. In the above example, there are 3 structure
members: custnum, salary and commission. Of these, two are of type in and one
is of type float. If integer space allocated by a system is 2 bytes and float four
bytes the above would allo9acter 2bytes for custnum, 2 bytes for salary and 4
bytes for commission.

How to access structure members in C++?
To access structure members, the operator used is the dot operator denoted by
(.). The dot operator for accessing structure members is used thusly:

structure variable name.member name
For example:
A programmer wants to assign 2000 for the structure member salary in the above
example of structure Customer with structure variable cust1 this is written as:

Nested Structures
A structure can be nested inside another structure.
Stuct addr
{
int houseno;
char area[26];
Prepared By Sumit Kumar Gupta, PGT Computer Science
Page 3 of 6
char city[26];
char state[26];
};
struct emp
{
int empno;
char name[26];
char desig[16];
addr address;
float basic;
};
emp worker ;
The structure emp h as been defined having several elements including a
structure address also. The elements address(of structure emp) is itself a
structure of type addr. While defining such structures, just make sure that innder
structure one defined before outer structure one defined before outer structures.

Structure and Arrays
The structure and the array both are c++ derived data types. While arrays are
collections of analogous elements, structures assembles dissimilar elements
under one roof.
Array and structure both combined together to form complex data objects. There
may be structures contained within an array; also there array element of a
structure.
Array of Structure
To declare 100- elements array of structure of type addr
addr mem_addr[100];
To create an array having structures emp type
Emp sales_emp[100];
Above declaration to create an array sales_emp to store 100 structures of emp
type.

Prepared By Sumit Kumar Gupta, PGT Computer Science
Page 4 of 6

Array Within Structures
A structure elements my be simple or complex . A complex structure may itself
be a structure or any array. When a structure elements happens to be an array it
is treated in the same way as array are treated. The only additional things to be
kept in mind is that to access it, its structure name followed by a (.) and the name
is to be given. For example consider structure ;

Struct student
{
Int rollno;
char name[21];
float marks[5]; //array of 5 floats
};
students learner;
The above declared statement variable learner is of structure type student that
contains an elements which is a n array of 5 floats to store marks of a students in
5 different subjects.

Passing Structures to Function
If you have a structure local to a function and you need to pass its values to
another function , then it can be achieved in two ways : (i) by passing individual
structure elements , and (ii) by passing the entire structure . Both the ways cab
be achieved by call by value as well as by call by reference method pa passing
variables.
Passing Structure Elements to Functions
When an elements of a structure is passed to a function , you are actually
passing the value of that element to the function Therefore , it just like passing a
simple variable. Consider following structure
Struct date {
short day;
shot month;
short year;
} Bdate;
`
Prepared By Sumit Kumar Gupta, PGT Computer Science
Page 5 of 6
Passing entire structure to Functions
Passing entire structure makes the most sense when the structure is relatively
compact. The entire structure can be passed to the function both ways by value
and by reference. Passing by value is useful when the original values are not
to be changed and passing by reference is useful when original values are to
be changed.
User Defined Data Types
C++ allows you to define explicitly new data type name by using the keyword
typedef doses not actually create a new data class, rather it defines a new
name for an exiting type. This can increase the potablity of a program as only the
typedef statements would have to be changed . Using typedef can also aid in
self- documenting your code by allowing ddescriptive name for the standard data
type. The syntax of the typedef statement is
Typedef type name ;

Use of typedef for declaring structures
The typedef function is used to declare the alias name for the structure type.
typedef structure result
{
} progress;
results report1;
progress report2
in this above program segment the usage of typedef defines a structure result
and an alias name of the same structure as progress.
The two structures report1 and report2 are declared accordingly of the same
type as result and progress are now alternative nomenclature for each other.

Enumerated data types
It is another way of defining data types. It includes all the probables list of values
that a data type can take. It has the following format for declaration;
Enum struc-name {v1 v2 ,v3, v3,v4…..v n }

Prepared By Sumit Kumar Gupta, PGT Computer Science
Page 6 of 6

Practice Question Paper
1. What is a structure?
2. Define arrays of structures?
3. Differentiate between the following using examples
a. Simple structure
b. multiple structure
4. Explain the following with examples
a. Declaration of a structure
b. Definition of a structure variable
c. Accessing of a structure member
d. Initialization of a member within structures.
e. Arrays of structures.
f. Passing structures to functions
g. Use defined structure
6. Explain the usage of type def for declaring structure .
7.What are enumerated data type?
8. What are symbolic constants?
9. Define a structure for length and breadth of a rectangle of type float and refer
the same as rect.
10. Write a statement to assign a variable measure to length member of rect
structure variable.
11. The enumerated type is considered as an integer type . Comment on the
factual concern of the statement.
12. Write a program segment to declared and initialize an array of four structure
with name of the student age and marks in three subjects.

Prepared By Sumit Kumar Gupta, PGT Computer Science

Más contenido relacionado

La actualidad más candente (20)

Type casting
Type castingType casting
Type casting
 
friend function(c++)
friend function(c++)friend function(c++)
friend function(c++)
 
Constructors and Destructor in C++
Constructors and Destructor in C++Constructors and Destructor in C++
Constructors and Destructor in C++
 
Inheritance in java
Inheritance in javaInheritance in java
Inheritance in java
 
Function overloading(c++)
Function overloading(c++)Function overloading(c++)
Function overloading(c++)
 
Inheritance in java
Inheritance in javaInheritance in java
Inheritance in java
 
Function overloading ppt
Function overloading pptFunction overloading ppt
Function overloading ppt
 
Java I/o streams
Java I/o streamsJava I/o streams
Java I/o streams
 
C++ Overview PPT
C++ Overview PPTC++ Overview PPT
C++ Overview PPT
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
Basics of Java
Basics of JavaBasics of Java
Basics of Java
 
User defined functions
User defined functionsUser defined functions
User defined functions
 
Class and object in C++
Class and object in C++Class and object in C++
Class and object in C++
 
This pointer
This pointerThis pointer
This pointer
 
Object Oriented Programming Using C++
Object Oriented Programming Using C++Object Oriented Programming Using C++
Object Oriented Programming Using C++
 
Java Exception handling
Java Exception handlingJava Exception handling
Java Exception handling
 
String functions in C
String functions in CString functions in C
String functions in C
 
File in C language
File in C languageFile in C language
File in C language
 
Java Data Types
Java Data TypesJava Data Types
Java Data Types
 
Files in c++ ppt
Files in c++ pptFiles in c++ ppt
Files in c++ ppt
 

Destacado

C++ revision tour
C++ revision tourC++ revision tour
C++ revision tourSwarup Boro
 
Constructor & destructor
Constructor & destructorConstructor & destructor
Constructor & destructorSwarup Boro
 
Spider Man Takes A Day Off
Spider Man Takes A Day OffSpider Man Takes A Day Off
Spider Man Takes A Day Offchrisregan501
 
Railway reservation
Railway reservationRailway reservation
Railway reservationSwarup Boro
 
Program to sort array using insertion sort
Program to sort array using insertion sortProgram to sort array using insertion sort
Program to sort array using insertion sortSwarup Boro
 
Implementation of oop concept in c++
Implementation of oop concept in c++Implementation of oop concept in c++
Implementation of oop concept in c++Swarup Boro
 
Iowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco Días
Iowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco DíasIowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco Días
Iowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco DíasEAE Business School
 

Destacado (20)

Classes
ClassesClasses
Classes
 
Pointers
PointersPointers
Pointers
 
Boolean
BooleanBoolean
Boolean
 
C++ revision tour
C++ revision tourC++ revision tour
C++ revision tour
 
Constructor & destructor
Constructor & destructorConstructor & destructor
Constructor & destructor
 
Spider Man Takes A Day Off
Spider Man Takes A Day OffSpider Man Takes A Day Off
Spider Man Takes A Day Off
 
Railway reservation
Railway reservationRailway reservation
Railway reservation
 
Hoax Chris Regan
Hoax Chris ReganHoax Chris Regan
Hoax Chris Regan
 
Hoax Chris Regan
Hoax Chris ReganHoax Chris Regan
Hoax Chris Regan
 
Program to sort array using insertion sort
Program to sort array using insertion sortProgram to sort array using insertion sort
Program to sort array using insertion sort
 
Implementation of oop concept in c++
Implementation of oop concept in c++Implementation of oop concept in c++
Implementation of oop concept in c++
 
Functions
FunctionsFunctions
Functions
 
EPSON PROJECTOR EB X14
EPSON PROJECTOR EB X14EPSON PROJECTOR EB X14
EPSON PROJECTOR EB X14
 
Iowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco Días
Iowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco DíasIowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco Días
Iowa, anticipo de Clinton contra Rubio en otoño, de Alexandre Muns - Cinco Días
 
Compostagem
CompostagemCompostagem
Compostagem
 
Muhammad Hassan
Muhammad HassanMuhammad Hassan
Muhammad Hassan
 
Custom Company Stores
Custom Company StoresCustom Company Stores
Custom Company Stores
 
Coffee
CoffeeCoffee
Coffee
 
James Ayeni CV
James Ayeni CVJames Ayeni CV
James Ayeni CV
 
Panneerselvam
PanneerselvamPanneerselvam
Panneerselvam
 

Similar a Structures in c++

Similar a Structures in c++ (20)

Structures in c++
Structures in c++Structures in c++
Structures in c++
 
2 lesson 2 object oriented programming in c++
2 lesson 2 object oriented programming in c++2 lesson 2 object oriented programming in c++
2 lesson 2 object oriented programming in c++
 
Structure & union
Structure & unionStructure & union
Structure & union
 
Lk module4 structures
Lk module4 structuresLk module4 structures
Lk module4 structures
 
Structures in c language
Structures in c languageStructures in c language
Structures in c language
 
Structures in c language
Structures in c languageStructures in c language
Structures in c language
 
Unit 4 qba
Unit 4 qbaUnit 4 qba
Unit 4 qba
 
C structure and union
C structure and unionC structure and union
C structure and union
 
Chapter 13.1.9
Chapter 13.1.9Chapter 13.1.9
Chapter 13.1.9
 
structures_v1.ppt
structures_v1.pptstructures_v1.ppt
structures_v1.ppt
 
structures_v1.ppt
structures_v1.pptstructures_v1.ppt
structures_v1.ppt
 
Presentation on c structures
Presentation on c   structures Presentation on c   structures
Presentation on c structures
 
Presentation on c programing satcture
Presentation on c programing satcture Presentation on c programing satcture
Presentation on c programing satcture
 
Programming in C
Programming in CProgramming in C
Programming in C
 
CPU : Structures And Unions
CPU : Structures And UnionsCPU : Structures And Unions
CPU : Structures And Unions
 
C Structures and Unions
C Structures and UnionsC Structures and Unions
C Structures and Unions
 
Structure.pptx
Structure.pptxStructure.pptx
Structure.pptx
 
Chapter4.pptx
Chapter4.pptxChapter4.pptx
Chapter4.pptx
 
Unit 3
Unit 3Unit 3
Unit 3
 
Lecture 19 - Struct and Union
Lecture 19 - Struct and UnionLecture 19 - Struct and Union
Lecture 19 - Struct and Union
 

Más de Swarup Boro

Concatenation of two strings using class in c++
Concatenation of two strings using class in c++Concatenation of two strings using class in c++
Concatenation of two strings using class in c++Swarup Boro
 
Program: Inheritance in Class - to find topper out of 10 students
Program: Inheritance in Class - to find topper out of 10 studentsProgram: Inheritance in Class - to find topper out of 10 students
Program: Inheritance in Class - to find topper out of 10 studentsSwarup Boro
 
Array using recursion
Array using recursionArray using recursion
Array using recursionSwarup Boro
 
Binary addition using class concept in c++
Binary addition using class concept in c++Binary addition using class concept in c++
Binary addition using class concept in c++Swarup Boro
 
Study of Diffusion of solids in Liquids
Study of Diffusion of solids in Liquids                                 Study of Diffusion of solids in Liquids
Study of Diffusion of solids in Liquids Swarup Boro
 
Program using function overloading
Program using function overloadingProgram using function overloading
Program using function overloadingSwarup Boro
 
Program to find the avg of two numbers
Program to find the avg of two numbersProgram to find the avg of two numbers
Program to find the avg of two numbersSwarup Boro
 
Program to find factorial of a number
Program to find factorial of a numberProgram to find factorial of a number
Program to find factorial of a numberSwarup Boro
 
Canteen management program
Canteen management programCanteen management program
Canteen management programSwarup Boro
 
C++ program using class
C++ program using classC++ program using class
C++ program using classSwarup Boro
 
Arrays and library functions
Arrays and library functionsArrays and library functions
Arrays and library functionsSwarup Boro
 
Computer communication and networks
Computer communication and networks Computer communication and networks
Computer communication and networks Swarup Boro
 

Más de Swarup Boro (16)

Concatenation of two strings using class in c++
Concatenation of two strings using class in c++Concatenation of two strings using class in c++
Concatenation of two strings using class in c++
 
Program: Inheritance in Class - to find topper out of 10 students
Program: Inheritance in Class - to find topper out of 10 studentsProgram: Inheritance in Class - to find topper out of 10 students
Program: Inheritance in Class - to find topper out of 10 students
 
Array using recursion
Array using recursionArray using recursion
Array using recursion
 
Binary addition using class concept in c++
Binary addition using class concept in c++Binary addition using class concept in c++
Binary addition using class concept in c++
 
Study of Diffusion of solids in Liquids
Study of Diffusion of solids in Liquids                                 Study of Diffusion of solids in Liquids
Study of Diffusion of solids in Liquids
 
Program using function overloading
Program using function overloadingProgram using function overloading
Program using function overloading
 
Program to find the avg of two numbers
Program to find the avg of two numbersProgram to find the avg of two numbers
Program to find the avg of two numbers
 
Program to find factorial of a number
Program to find factorial of a numberProgram to find factorial of a number
Program to find factorial of a number
 
Canteen management program
Canteen management programCanteen management program
Canteen management program
 
C++ program using class
C++ program using classC++ program using class
C++ program using class
 
Arrays and library functions
Arrays and library functionsArrays and library functions
Arrays and library functions
 
Queue
QueueQueue
Queue
 
Stack
StackStack
Stack
 
Computer communication and networks
Computer communication and networks Computer communication and networks
Computer communication and networks
 
2D Array
2D Array2D Array
2D Array
 
1D Array
1D Array1D Array
1D Array
 

Último

mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 

Último (20)

INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 

Structures in c++

  • 1. Page 1 of 6 Structures What is a Structure? Structure is a collection of variables under a single name. Variables can be of any type: int, float, char etc. The main difference between structure and array is that arrays are collections of the same data type and structure is a collection of variables under a single name. How to declare and create a Structure Declaring a Structure: The structure is declared by using the keyword struct followed by structure name, also called a tag. Then the structure members (variables) are defined with their type and variable names inside the open and close braces { and }. Finally, the closed braces end with a semicolon denoted as ; following the statement. The above structure declaration is also called a Structure Specifier. Example: Three variables: custnum of type int, salary of type int, commission of type float are structure members and the structure name is Customer. This structure is declared as follows: In the above example, it is seen that variables of different types such as int and float are grouped in a single structure name Customer. Arrays behave in the same way, declaring structures does not mean that memory is allocated. Structure declaration gives a skeleton or template for the structure. After declaring the structure, the next step is to define a structure variable. Prepared By Sumit Kumar Gupta, PGT Computer Science
  • 2. Page 2 of 6 How to declare Structure Variable? This is similar to variable declaration. For variable declaration, data type is defined followed by variable name. For structure variable declaration, the data type is the name of the structure followed by the structure variable name. In the above example, structure variable cust1 is defined as: What happens when this is defined? When structure is defined, it allocates or reserves space in memory. The memory space allocated will be cumulative of all defined structure members. In the above example, there are 3 structure members: custnum, salary and commission. Of these, two are of type in and one is of type float. If integer space allocated by a system is 2 bytes and float four bytes the above would allo9acter 2bytes for custnum, 2 bytes for salary and 4 bytes for commission. How to access structure members in C++? To access structure members, the operator used is the dot operator denoted by (.). The dot operator for accessing structure members is used thusly: structure variable name.member name For example: A programmer wants to assign 2000 for the structure member salary in the above example of structure Customer with structure variable cust1 this is written as: Nested Structures A structure can be nested inside another structure. Stuct addr { int houseno; char area[26]; Prepared By Sumit Kumar Gupta, PGT Computer Science
  • 3. Page 3 of 6 char city[26]; char state[26]; }; struct emp { int empno; char name[26]; char desig[16]; addr address; float basic; }; emp worker ; The structure emp h as been defined having several elements including a structure address also. The elements address(of structure emp) is itself a structure of type addr. While defining such structures, just make sure that innder structure one defined before outer structure one defined before outer structures. Structure and Arrays The structure and the array both are c++ derived data types. While arrays are collections of analogous elements, structures assembles dissimilar elements under one roof. Array and structure both combined together to form complex data objects. There may be structures contained within an array; also there array element of a structure. Array of Structure To declare 100- elements array of structure of type addr addr mem_addr[100]; To create an array having structures emp type Emp sales_emp[100]; Above declaration to create an array sales_emp to store 100 structures of emp type. Prepared By Sumit Kumar Gupta, PGT Computer Science
  • 4. Page 4 of 6 Array Within Structures A structure elements my be simple or complex . A complex structure may itself be a structure or any array. When a structure elements happens to be an array it is treated in the same way as array are treated. The only additional things to be kept in mind is that to access it, its structure name followed by a (.) and the name is to be given. For example consider structure ; Struct student { Int rollno; char name[21]; float marks[5]; //array of 5 floats }; students learner; The above declared statement variable learner is of structure type student that contains an elements which is a n array of 5 floats to store marks of a students in 5 different subjects. Passing Structures to Function If you have a structure local to a function and you need to pass its values to another function , then it can be achieved in two ways : (i) by passing individual structure elements , and (ii) by passing the entire structure . Both the ways cab be achieved by call by value as well as by call by reference method pa passing variables. Passing Structure Elements to Functions When an elements of a structure is passed to a function , you are actually passing the value of that element to the function Therefore , it just like passing a simple variable. Consider following structure Struct date { short day; shot month; short year; } Bdate; ` Prepared By Sumit Kumar Gupta, PGT Computer Science
  • 5. Page 5 of 6 Passing entire structure to Functions Passing entire structure makes the most sense when the structure is relatively compact. The entire structure can be passed to the function both ways by value and by reference. Passing by value is useful when the original values are not to be changed and passing by reference is useful when original values are to be changed. User Defined Data Types C++ allows you to define explicitly new data type name by using the keyword typedef doses not actually create a new data class, rather it defines a new name for an exiting type. This can increase the potablity of a program as only the typedef statements would have to be changed . Using typedef can also aid in self- documenting your code by allowing ddescriptive name for the standard data type. The syntax of the typedef statement is Typedef type name ; Use of typedef for declaring structures The typedef function is used to declare the alias name for the structure type. typedef structure result { } progress; results report1; progress report2 in this above program segment the usage of typedef defines a structure result and an alias name of the same structure as progress. The two structures report1 and report2 are declared accordingly of the same type as result and progress are now alternative nomenclature for each other. Enumerated data types It is another way of defining data types. It includes all the probables list of values that a data type can take. It has the following format for declaration; Enum struc-name {v1 v2 ,v3, v3,v4…..v n } Prepared By Sumit Kumar Gupta, PGT Computer Science
  • 6. Page 6 of 6 Practice Question Paper 1. What is a structure? 2. Define arrays of structures? 3. Differentiate between the following using examples a. Simple structure b. multiple structure 4. Explain the following with examples a. Declaration of a structure b. Definition of a structure variable c. Accessing of a structure member d. Initialization of a member within structures. e. Arrays of structures. f. Passing structures to functions g. Use defined structure 6. Explain the usage of type def for declaring structure . 7.What are enumerated data type? 8. What are symbolic constants? 9. Define a structure for length and breadth of a rectangle of type float and refer the same as rect. 10. Write a statement to assign a variable measure to length member of rect structure variable. 11. The enumerated type is considered as an integer type . Comment on the factual concern of the statement. 12. Write a program segment to declared and initialize an array of four structure with name of the student age and marks in three subjects. Prepared By Sumit Kumar Gupta, PGT Computer Science