Labels

Android (1) bash (2) boost (2) C (34) C++ (2) cheatsheet (2) CLion (6) css (3) Debian (33) DL (17) Docker (1) Dreamweaver (2) Eclipse (3) fail2ban (4) git (5) GitHub (4) Hacking (3) html (8) http (1) iOS (1) iPad (1) IRC (1) Java (30) javascript (3) Linux (164) Mac (19) Machine Learning (1) mySQL (47) Netbeans (4) Networking (1) Nexus (1) OpenVMS (6) Oracle (1) Pandas (3) php (16) Postgresql (8) Python (9) raid (1) RedHat (14) Samba (2) Slackware (45) SQL (14) svn (1) tar (1) ThinkPad (1) Virtualbox (3) Visual Basic (1) Visual Studio (1) Windows (2)

Thursday 23 June 2022

Passing arrays to functions in C are by reference

The following code illustrates this;

#include <stdio.h>

void test(char d[])
{
// Print the value passed to the function.
printf("VALUE IN FUNCTION - DATA: %d\n",d[2]);
d[2]=9; // We'll change the value.

}

void test2(int a)
{
// Print the value passed to the function.
printf("VALUE IN FUNCTION - INT: %d\n",a);
a=99; // We'll change the value.
}

int main()
{
// Setup the values
char DATA[5]={1,2,3,4,5};
int b=10;
printf("\n");

printf("BEFORE FUNCTION CALLS - DATA: %d INT: %d\n",DATA[2],b);
test(DATA);
test2(b);

// Print the values after the functions.
printf("AFTER FUNCTION CALLS - DATA: %d INT: %d\n",DATA[2],b);
}

No comments:

Post a Comment

Note: only a member of this blog may post a comment.