Skip to main content

C Programming Interview Questions With Answers - Part VIII.


54. What Is Call By Value In Functions?

Answer: Arguments or parameters can be passed to the functions by call by value. In call by value, the values of the variables are passed to the functions. In this, values of variables are not affected by changing the vale of the formal parameter.


55. What Is Call By Reference In Functions?

Answer: In Call by reference method of passing arguments to functions, the addresses of the variables are passed. In this, values of variables are affected by changing the value of formal parameters.


56. What Is The Difference Between Call By Value & Call By Reference (Or Pass By Value Or Pass By Reference)?

Answer: Call by value means sending the values of the arguments- The value of each of the actual arguments in the calling function is copied into corresponding formal arguments of the called function. The changes made to the formal arguments have no effect on the values of actual arguments in the calling function. This technique of passing arguments is called call by value illustrated by swapv(int x, int y) function in the following example.

Call by reference means sending the addresses of the arguments - the addresses of actual arguments in the calling function are copied into formal arguments of the called function. Using these addresses we are actually working on actual argument so changes will be reflected in the calling function. This technique of passing arguments is called call by reference, illustrated by swapr(int *x,int *y) in following example.

Call by reference passes a pointer to the value. This allows the callee to modify the variable directly. Call by value gives a copy of the value to the callee. This allows the callee to modify the value without modifying the variable. (In other words, the callee simply cannot modify the variable, since it lacks a reference to it.)


57. Can You Pass A Variable Argument List To A Function At Run Time?

Answer: No, we can't.  Every actual argument list must be known at compile time. In that sense, it is not truly a variable argument list.


58. Explain The Need For User defined Functions Or The Advantages Of Functions?

Answer: The need for user-defined function:
  • A programmer may have a block of code that he has repeated n times throughout the program. A function to execute that code would save a great deal of space, and it would also make the program more readable.
  • It is easy to locate and isolate a faulty function. Having only one copy of the code makes it easier to make changes.
  • Another reason for functions is to break down a complex program into logical parts. For example, take a menu program that runs complex code when a menu choice is selected. The program would probably best be served by making functions for each of the actual menu choices, and then breaking down the complex tasks into smaller, more manageable tasks, which could be in their own functions. 
  • In this way, a program can be designed that makes sense when read. And has a structure that is easier to understand quickly. The worst programs usually only have the required function, main, and fill it with pages of jumbled code.
  • A function may be used by many other programs. A programmer can use already compiled function instead of starting over from scratch.


59. What Are Function Prototype?

Answer: It is a common practice that all the function programs are written after the main( ) function .when they are accessed in the main program, an error of prototype function is shown by the compiler. It means the computer has no reference about the programmer defined functions, as they are accessed before the definition.

To overcome this, i.e. to make the compiler aware that the declarations of the function referred at the calling point follow, a declaration is done in the beginning of the program immediately after the preprocessor statements. Such a declaration of function is called prototype declaration and the corresponding functions are called function prototypes.


#include <stdio.h>
int maximum(int x, int y);
main()
{
  int a, b, c;
  scanf(“ % d % d”, & amp; a, & amp; b);
  c = maximum(a, b);
  printf(“\n maximum number is: % d”, c);
}
int maximum(int x, int y)
{
  int z;
  z = (x & gt; = y) ? x : y;
  return (z);
}


Check Out Other Questions:

41) What is the size of the void pointer in C?
42) What is a nested loop in C?
43) What are the operations performed on C++ lists?
44) How is searching in an array list carried out?
45) Where can an element are inserted in an array list?


46) How is deletion in an array list carried out?
47) What are the advantages of array lists?
48) What are the disadvantages of an array list?
49) What is a linked list in C?
50) What is a node?


...Return To C Questions Index.
...Return To C Programming Index.

... Return To HR Interview Index

Comments

Popular posts from this blog

Tell Me Something About Yourself - Interview Answers.

Try to introduce some of your most important employment-oriented skills as well as your education and accomplishments to the interviewer. Answer to this question is very important because it positions you for the rest of the interview . That's why this statement is often called the "Positioning Statement". One should take the opportunity to show his/her communication skills by speaking clearly and concisely in an organized manner. Since there is no right or wrong answer for this question hence it is important to appear friendly. YOUR ANSWERS CAN BE: 1) I am a person with strong interpersonal skills and have the ability to get along well with people . I enjoy challenges and looking for creative solutions to problems. 2) Besides the details given in my resume, I believe in character values, vision and action. I am quick in learning from mistakes. I am confident that the various tests that you have conducted will corroborate my competencies apti...

What Is (Are) Your Weakness (Weaknesses)? - Interview Answers

There’s a saying – “However small the thorn maybe it has the ability to pierce.” Never say you are a Workaholic, a Perfectionist, etc. because it sounds negative. Try to convert these negative biased qualities into positive ones. For Example, In   place of Workaholic you can say you are a hard worker and always willing to work for extra hours. In place of Perfectionist , you can say you are detail oriented and like to set high standard for work. “Try to specify your weakness as your strength and also highlight it as a benefit.” Your answers can be: 1) One of my weaknesses as I perceive is occasional compromise on time for quality and perfection. 2) I feel I am not very detail-oriented . I’m a person that wants accomplish as much as possible. I realized this hurts quality and therefore I‘m trying hard to find a balance between quality and quantity. 3) At times even when I need help, I try to solve my own problems instead of asking a co-worker who might know...

What Is (Are) Your Strengths? - Interview Answers

This is a simple and popular interview question. Generally people answer it in two ways. There are people who simply state their strength like “I am Young, Dynamic, Intelligent, Smart and so on…”. Such answer is neither right nor wrong but does not help u in any way also. Secondly there are peoples who state their strengths and explain them how he can use his strength for the job and industry. Do not simply state your strength. Everyone has some strength, all you need is to convert them into benefits. In short, try to advertise yourself by converting your features into strengths. “EVERYONE CLAIM THEY ARE HONEST, HARDWORKING, SMART AND SO ON….. BUT WITH AN EXAMPLE IT IS MUCH MORE BELIEVABLE.” Your answers can be : 1) I am a hard worker and because of this ability I can work for additional hours to accomplish my tasks.I am commitment oriented and hence I always enjoy the trust and confidence of my team mates which enables me to perform my duties very easily. 2) I am a...