[求助]这个程序我有个地方不明白呢!
//求字符串长度函数#include<stdio.h>
#include<stdlib.h>
char StrLength(char *s);
int main()
{
char *str=NULL;
int length;
str=(char*)malloc(100*sizeof(char));
if(str==NULL)
{
exit(1);
}
printf("Please input str:\n");
scanf("%15s",str);
length=StrLength(str);
printf("length=%d\n",length);
free(str);str=NULL;
return 0;
}
char StrLength(char *s)
{
char *p=NULL;
for(p=s;*p!='\0';p++);//让p指向字符串的尾。
return (p-s);//就是这个地方,p和s现在不是地址吗,地址减地址怎么可以呢?接收它的可是整型length呀!!请大家帮我看看,谢谢了!!
}