What will be the output of the following program for call by name and copy restore parameter passing mechanism respectively?

Void func(int a, int b)

{

a=a+b;

b=a+b;

a=b-a;

b=a-b

}

main()

{

int j, i=4;

Int array[10]={1,2,3,4,5,6,7,8,9,0};

func(i, array[i]);

for(j=0;j<10;j++)

printf(“%d”, array[j]);

}

1
Call by name:  -1 2 3 4 5 6 7 8 9 9  Copy restore: 1 2 3 4 -9 6 7 8 9 0
2
Call by name:  0 2 3 4 5 6 7 8 9 0  Copy restore: 1 2 3 4 -9 6 7 8 9 0
3
Call by name:  -1 2 3 4 5 6 7 8 9 9  Copy restore: 1 2 3 4 5 6 7 8 9 0
4
Call by name:  1 2 3 4 5 6 7 8 9 9  Copy restore: 1 2 3 4 -8 6 7 8 9 0

Sponsored

hivanix.in

Visit

This quiz is brought to you by hivanix.in

🌐 Web App Development

Quick Navigation