来来来,大家来理解下这三行代码
程序实现一个strcmp函数。int i = 0;
while(*(p1 + i) == *( p2 + i))
if (*(p1 + i++) == '\0' ) return 0;
return *(p1 + i) - *(p2 + i);
我是这么理解的。因为p1和p2首地址值相等, 他们的首地址就相等了。
if语句中*(p1 + i++) 就是p1 指向他下一个地址值, p2也指向他下一个地址值。当比较到最后都没结束循环就说明
p1 和 p2 指向同一块地址单元。
下面就是当两个地址值不同就比较其ascll码值,并结束循环。
我想问的是, while控制if语句下的两个return只算一条语句吗?
就像while() if else if else 算一条语句。还有就是帮我看看我的理解有没有问题