In this statement you are incrementing the address contain in p1 by 1 or 0 based on the initial value in p3 and finally storing in p2.
For example p3 contains other that '\0' it means !p3 is non zero and !!p3 is again equal to 1, so statement will store the address contain in p1 plus 1 in p2.
Now other example p3 contains '\0' it means !p3 is equal to 1 and !!p3 is equal to 0, so statement will do nothing but copy the p1 in p2.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.