Chinaunix首页 | 论坛 | 博客
  • 博客访问: 368991
  • 博文数量: 100
  • 博客积分: 2500
  • 博客等级: 大尉
  • 技术积分: 1209
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-15 21:24
文章分类

全部博文(100)

文章存档

2011年(100)

分类: C/C++

2011-05-08 21:45:14


  1. #include <string.h>

  2.        size_t strlen(const char *s);

  1. #include <stddef.h>
  2. #include <stdio.h>

  3. size_t myStrlen(char const *s);

  4. int
  5. main(void)
  6. {
  7.         char *s = "hello";
  8.         char *t = "me";

  9.         printf("%d\n", myStrlen(s));
  10.         printf("%d\n", myStrlen(t));

  11.         if (myStrlen(s) >= myStrlen(t))
  12.                 printf("s > t\n");

  13.         if (myStrlen(s) - myStrlen(t) >= 0)
  14.                 printf("s > t\n");
  15. /*
  16.  * size_t 为无符号类型,size_t - size_t 也为无符号类型, 永远>=0
  17.  */
  18.         if (myStrlen(t) - myStrlen(s) >= 0)
  19.                 printf("t > s\n");

  20.         if (myStrlen(t) - 100 >= 0)
                    printf("t > 100\n");

            if (myStrlen(t) - 1 >= 0)
                    printf("t > 1\n");


  21.         return 0;
  22. }

  23. size_t
  24. myStrlen(char const *s)
  25. {
  26.         int len;

  27.         for (len = 0; *s++ != '\0'; len++)
  28.                 ;

  29.         return (len);
  30. }

Result:
  1. 5
  2. 2
  3. s > t
  4. s > t
  5. t > s
  6. t > 100
  7. t > 1

阅读(1389) | 评论(0) | 转发(0) |
0

上一篇:return 局部变量

下一篇:常用排序算法集合

给主人留下些什么吧!~~