Open In App

C | String | Question 10

The Output of the following C code will be?




#include <stdio.h>
  
void my_toUpper(char* str, int index)
{
    *(str + index) &= ~32;
}
  
int main()
{
    char* arr = \"geeksquiz\";
    my_toUpper(arr, 0);
    my_toUpper(arr, 5);
    printf(\"%s\", arr);
    return 0;
}

(A)



GeeksQuiz

(B)



geeksquiz

(C)

Compiler dependent

(D)

Runtime Error


Answer: (C)
Explanation:

The memory for the string arr is allocated in the read/write only area of data section. The choice is compiler dependent. In the newer version of compilers, the memory is allocated in the read only section of the data area. So any modification in the string is not possible. In older version compilers like Turbo-C, modification is possible.

Quiz of this Question
Please comment below if you find anything wrong in the above post

Article Tags :