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

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

Recommended Posts:

0 Average Difficulty : 0/5.0
No votes yet.

User Actions