自定义函数来查找数组的长度?

时间:2014-12-13 17:57:42

标签: arrays string char string-length

我试图找出字符串中元音的数量,但我不知道找到未初始化数组的长度。我将遍历所有的数组元素并返回元音的数量。我浏览了论坛并读到内置的strlen函数但我想让我自己的函数理解工作而不仅仅是我的工作已完成。已经使用for循环实现了这一点,但这是一个失败..

char strin[];
printf("Check for the number of vowels in the string : \n");
scanf("%s" , &strin);
int Number_of_vowels(strin);


//a custom function to find the string length.
int string_len(char[] string)
{
    //code to find the length
}
//a custom function to do the check.
int Number_of_vowels(char strin[])
{
    for(i = 0 ; i < stringlength , i++)
    {
        //check if the input char is vowel.
    }
}

2 个答案:

答案 0 :(得分:1)

很抱歉,因为我还没有评论,我也在我的iPad上,所以格式化会很糟糕。但是,当strin[]传入Number_of_Vowels()时,为什么不花费strin[]的长度?

你已经将{{1}}数组传递给它了,所以该数组的属性也应该进入方法。

答案 1 :(得分:0)

使用scanf的返回值。

int stringlength;
int vowels;

stringlength = scanf("%s", &strin);
vowels = Number_of_vowels(strin, stringlength);

int Number_of_vowels(char strin[], int stringlength)
{
    int vowels = 0;
    int i;
    for (i = 0; i < stringlength, i++) {
        // Code testing for vowels (possibly a switch loop testing ASCII values)
    }

    return vowels;
}