C | String | Question 4

Predict the output?

#include <stdio.h>
int fun(char *str1)
  char *str2 = str1;
  return (str1-str2);
int main()
  char *str = "GeeksQuiz";
  printf("%d", fun(str));
  return 0;

(A) 10
(B) 9
(C) 8
(D) Random Number

Answer: (B)

Explanation: The function fun() basically counts number of characters in input string. Inside fun(), pointer str2 is initialized as str1. The statement while(*++str1); increments str1 till ‘\0’ is reached. str1 is incremented by 9. Finally the difference between str2 and str1 is returned which is 9.

My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.