[A].
[B].
Answer: Option B
Explanation:
No, both the statements are same. It is the prototype for the function fun() that accepts one integer array as an parameter and returns an integer value.
[B].
Answer: Option B
Explanation:
No, both the statements are same. It is the prototype for the function fun() that accepts one integer array as an parameter and returns an integer value.
[B].
[C].
[D].
Answer: Option C
Explanation:
The statement ‘C’ is correct. When we pass an array as a funtion argument, the base address of the array will be passed.
[B].
Answer: Option A
Explanation:
Yes, It is possible to allocate a block of memory (of arbitrary size) at run-time, using the standard library’s malloc function, and treat it as an array.
[B].
[C].
[D].
Answer: Option C
Explanation:
The statement int arr[size]; produces an error, because we cannot initialize the size of array dynamically. Constant expression is required here.
Example: int arr[10];
One more point is there, that is, usually declaration is not allowed after calling any function in a current block of code. In the given program the declaration int arr[10]; is placed after a function call scanf().
[B].
Answer: Option B
Explanation:
Both mean two different things. arr gives the address of the first int, whereas the &arr gives the address of array of ints.
[B].
Answer: Option B
Explanation:
No, Mentioning the array name in C or C++ gives the base address in all contexts except one.
Syntactically, the compiler treats the array name as a pointer to the first element. You can reference elements using array syntax, a[n], or using pointer syntax, *(a+n), and you can even mix the usages within an expression.
When you pass an array name as a function argument, you are passing the “value of the pointer”, which means that you are implicitly passing the array by reference, even though all parameters in functions are “call by value”.
[B].
[C].
[D].
Answer: Option B
Explanation:
The statement 1 and 2 does not yield the base address of the array. While the scanf() and printf() yields the base address of the array.
[B].
[C].
[D].
Answer: Option B
Explanation:
The statement ‘B’ is correct, because int num[6]; specifies the size of array and num[6]=21; designates the particular element(7th element) of the array.
[B].
[C].
[D].
Answer: Option B
Explanation:
1. The array int num[26]; can store 26 elements. This statement is true.
2. The expression num[1] designates the very first element in the array. This statement is false, because it designates the second element of the array.
3. It is necessary to initialize the array at the time of declaration. This statement is false.
4. The declaration num[SIZE] is allowed if SIZE is a macro. This statement is true, because the MACRO just replaces the symbol SIZE with given value.
Hence the statements ‘1’ and ‘4’ are correct statements.