- 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
How to pass a 2D array as a parameter in C?
A 2-D array can be easily passed as a parameter to a function in C. A program that demonstrates this when both the array dimensions are specified globally is given as follows.
Example
#include <stdio.h> const int R = 4; const int C = 3; void func(int a[R][C]) { int i, j; for (i = 0; i < R; i++) for (j = 0; j < C; j++) a[i][j] += 5; ; } int main() { int a[R][C]; int i, j; for (i = 0; i < R; i++) for (j = 0; j < C; j++) a[i][j] = i+j; printf("Initial 2-D array is:
"); for (i = 0; i < R; i++) { for (j = 0; j < C; j++) { printf("%d ", a[i][j]); } printf("
"); } func(a); printf("Modified 2-D array is:
"); for (i = 0; i < R; i++) { for (j = 0; j < C; j++) { printf("%d ", a[i][j]); } printf("
"); } return 0; }
Output
The output of the above program is as follows.
Initial 2-D array is: 0 1 2 1 2 3 2 3 4 3 4 5 Modified 2-D array is: 5 6 7 6 7 8 7 8 9 8 9 10
Advertisements