请考虑以下代码段:
for(lptr=str;*lptr !='\0';lptr++);
什么是\ 0这里实际上非常令人困惑,输出是什么? 在这里发生了什么这个片段是我无法理解你的意见? 干杯!
答案 0 :(得分:6)
猜测str
是指向字符串的char*
。
您执行for
循环。
1)lptr = str
,lptr
开始指向字符串的开头。
2)*lptr != '\0'
,检查lptr
是否已到达字符串的结尾。在C语言中,字符串表示为由\0
终止的字符数组。
3)lptr++
,不断递增lptr
以指向每次迭代时的下一个字符。还要在每次迭代后检查*lptr != '\0'
。
简而言之,它将通过str
指向的字符串直到结束。在循环内部,您可以通过*lptr
答案 1 :(得分:2)
这个循环从指向str的第一个字符开始,然后转到下一个循环,直到它没有指向“end of of word” - char。