多方法實現對字符串長度的統計

方法一:

使用計數器的方法進行統計,最容易想到的方法;

#include <stdio.h>
#include <stdlib.h>
  #include <assert.h>
 
int my_strlen(char *string)
{
    assert(srring!=NULL);
    int count = 0;
    char *pstr = string;
    while (*pstr)
    {
    count++;
    pstr++;
    }
    return count;
}

方法二:

通過遞歸的方式是實現(該方法會加大系統開銷,效率相對較低);

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
  
int my_strlen(char *string)
{
    assert(string != NULL);
    char *pstr = string;
    if (*pstr == '\0')
        return 0;
    else
        return 1 + my_strlen(pstr + 1);
}

方法三:

使用指針統計字符串的長度

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
  
int my_strlen(char *string)
{
    assert(string != NULL);
    char *pstart = string;
    char *pend = string;
    while (*pend)
    {
        pend++;
    }
    return pend - pstart;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章