关于#c语言#指针实现计算字符在字符串出现的次数

c语言指针实现计算字符在字符串出现的次数

#include<stdio.h>
#include<string.h>
int ff(char *str,char ch);
main()
{
    char string[50];
    char c;
    int n;
    scanf("%s",string);
    scanf("%c",&c);
    n=ff(string,c);
    printf("出现的次数为%d\n",n);
    return 0;
}
int ff(char *str,char ch)
{
    int count=0;
    int *p;
    p=&str;
    while(*p!='\0')
    {
        if(*p=ch){
            count++;
        }
        p++;
        
    }
    return count;

发现一直输出不正确,刚开始学,希望可以教一下我,谢谢大家

int ff(const char *str,const char ch)
{
    int count=0;

    while(*str)
    {
        if(*str==ch){
            count++;
        }
        str++;
    }
    return count;
}