文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>不用变量 与 采用变量 以及 高效 实现 strlen函数

不用变量 与 采用变量 以及 高效 实现 strlen函数

时间:2010-06-03  来源:cao_lianming

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int count_str (char*);

int main (int argc, char *argv[])
{
    char *str = NULL;
    str = (char *)malloc(sizeof(char) * 100);

    printf("Please input the string you want to count:\n");

    fgets(str, 100,stdin);

    printf("The length of %s is mycount=%d,strlen=%d\n", str, count_str(str), strlen(str));

    return 0;
}

/* 不采用变量, 利用递归的方法 */
int count_str (char *string)
{
     if(*string == '\0')
     {
         return 0;
     }
     else
     {
         return(1 + count_str(++string));
     }
}

 gcc -o strlenstrlen.c
 ./strlen
 Please input the string you want to count:
 this is a
 The length of this is a
 is mycount=16,strlen=16

 

/* 采用指针变量,效率较低 */
int *count_str(char *str)
{
    char *tmp = str;

    while(*str != '\0')
    {
        str++;
    }

    return src-tmp;
}

 

/* 采用int变量, 效率相对比采用指针变量高很多 */
int count_str(char *str)
{
    int len = 0;

    for(; *str; ++len)
    {
        str++;
    }

    return len;
}

int count_str(char *str)
{
    int len = 0;

    for(; *str++ != '\0'; )
    {
        len++;
    }

    return len;
}


/* 采用高效的办法 用unsigned long 变量 */
...待补充
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载