给提个醒.关于"一个字符串中查找另一字符串出现次数的有关问题

给提个醒...关于"一个字符串中查找另一字符串出现次数的问题?
小弟C初学者,在自学 <21天学通C语言>
目前学完17天了,刚刚学完 "操纵字符串 "
就遇到问题了,,, "一个字符串中查找另一字符串的出现次数 "
请问,这个问题在使用strstr()查找到第一个之后应该如何操作下一步?

请高手们给提个醒...该如何做

------解决方案--------------------
把返回的 指针 +1 , 再调用 strstr
------解决方案--------------------
i=0;
while(str=strstr(str,substr)){
i+=1;
str+=strlen(substr);
}
------解决方案--------------------
*str = "sf " 与str[] = "sf "不应该是等价的么~~str不都是指针么?

---------

但是后者str永远都是代表首地址。所以用str++等操作就不等价了