Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1758819
  • 博文数量: 335
  • 博客积分: 4690
  • 博客等级: 上校
  • 技术积分: 4341
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-08 21:38
个人简介

无聊之人--除了技术,还是技术,你懂得

文章分类

全部博文(335)

文章存档

2016年(29)

2015年(18)

2014年(7)

2013年(86)

2012年(90)

2011年(105)

分类: C/C++

2011-04-20 20:46:32


  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #define OK 0
  4. int strlen(char *);
  5. int main(int argc,char ** argv)
  6. {
  7.     printf("the length of the string is %d & the size of the string is %d\r\n",strlen("abcd"),sizeof("abcd"));
  8.     system("pause");
  9.     return OK;
  10. }
  11. int strlen(char *s){
  12.     char * p=s;
  13.     while(*p != '\0'){
  14.         p++;
  15.     }
  16.     return p-s;
  17. }

这样我们就知道strlen不同于sizeof,sizeof是运算符,有编译器来计算其值大小,strlen的实现告诉我们
对字符串而言,strlen总比sizeof小1,即
sizeof(string)=strlen(string)+1

阅读(2217) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~