作业帮 > 综合 > 作业

while循环条件是while(s1 = strstr(s1,s2)) {s1+=strlen(s2)},

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/09 14:15:06
while循环条件是while(s1 = strstr(s1,s2)) {s1+=strlen(s2)},
进入循环条件s1 = strstr(s1,s2),是不是少了个等号啊?但多了个等号就无法进入循环
朋友,你有没有想过不加等号不是语法错误,而是另一个意思.
strstr(*str1,*str2)函数是实现从字符串str1中查找是否有字符串str2,如果有,从str1中的str2位置起,返回str1中str2起始位置的指针,如果没有,返回null.
所以,不加=,那就是赋值呀,只有在str1中找到str2,才赋真值,否则就赋值为假.所以呢,这一句是非常巧妙的判断了函数的参数是否合理,也就是说这个循环条件是判断str1中是否有str2,是防止出现意外情况.