I cant see the reason for the syntax error in this code?
Code:
#include <stdio.h>
int what (char *st1,char *st2){
char *p=st1;
if (*st2|| *st1) {
if (*st1=='\0') return 0; //here something regarding variable assigning
while(*st1 && *st2 && *st1==*st2) st++; // and here
if (st==p) return 0;
return what(st1,st2+1);
}
else
return 1;
}
int main() {
char str1[]="aaabbbbbbcd" , str2[]="abcd" , str3[]="abd" ,str4[]="abcde";
printf("%d %d %d\n",what(str1,str2),what(str1,str3),what(str1,str4));
return 0;
}