+ 3
How can we store the return value of "strstr()" in an "int" variable in C Language ?
As per the C language, the strstr function returns a "char*". So how is the following code running fine and printing "true" ? [ I got this question in a challenge of Me Vs SoloLearn ] Help me out guys !!! CODE : #include<stdio.h> #include <string.h> void main() { char * str1 = "Hello World"; char * str2 = "rl"; int a = strstr(str1,str2); if(a!='\0') printf("true"); else printf("false"); }
3 Answers
+ 4
you can't because the return value is not an int but a pointer to the first occurrence of str2, if str2 cannot be found the return value is NULL, so you can work your way around that by using if(strstr(str1, str2)!=NULL)
0
We can use char* , I run the above program , It shows no ERROR
Am ,I Write.....