字符串作函数形参
//自己编写strlen函数(自学使用,有错误)
#include <stdio.h>
int strlen(char *str);
int main(void){
char str[20];
gets(str);
printf("%d\n",strlen(&str[0]));
//printf("%d\n",sizeof(str));
}
int strlen(char *str)//传字符串时用指针
{
int n=0;
int i;
int len=(sizeof(str))/(sizeof(str[0]));//sizeof一个指针长度总是4
printf("%d\n",len);
for(i=0;i<len;i++)
{
if(str[i]<='255'&&str[i]>='0')
n++;
}
return n;
}
数组做参数退化为指针
算的不是字符串的大小,而是char*这个类型占多少字节,32位计算机是4,64位是8