【发布时间】:2019-09-19 18:56:48
【问题描述】:
两者有什么区别:
while(*s++ != '\0') {}
和
while(*s != '\0') {
s++;
}
s 是一个char *。后者工作正常。但在第一个循环结束时,*s 不等于 '\0'。
【问题讨论】:
-
在第一个语句中,
s将在 while 循环退出时将一个字符指向空字符之外。在第二个示例中,s将在 while 循环退出时指向空字符。 -
循环控制是一样的,只是循环完成后
s指向哪里。
标签: c pointers post-increment