- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Explain the pointers for inter-function communication in C language.
We know that functions can be called by value and called by reference.
- If the actual parameter should not change in called function, pass the parameter-by value.
- If the value of actual parameter should get changed in called function, then use pass-by reference.
- If the function has to return more than one value, return these values indirectly by using call-by-reference.
Example
Following is the C program for the demonstration of returning the multiple values −
#include<stdio.h> void main() { void areaperi(int,int*,int*); int r; float a,p; printf("enter radius of circle:
"); scanf("%d",&r); areaperi(r,&a,&p); printf("area=%f
",a); printf("perimeter=%f",p); } void areaperi(int x,int *p,int *q) { *p=3.14*x*x; *q=2 * 3.14*x; }
Output
When the above program is executed, it produces the following output −
Enter radius of circle: 5 Area=78.50000 Perimeter=31.40000
Note
- Pointers have a type associated with them. They are not just pointer types, but rather are the pointer to a specific type.
- The size of all pointers is same, which is equal to size on int.
- Every pointer holds the address of one memory location in computer, but the size of a variable that the pointer refers can be different.
Advertisements