编译没问题 为什么执行就有问题
要求编写一个函数求字符串的长度 由主函数输人字符串#include <stdio.h>
#include <string.h>
char len(char *p);
void main()
{
char s1[20];
int n;
char *p=s1
gets(p);
n=len(s1);
printf("%d",n);
}
int len(char *p)
{
int i;
while(*p!='\0')
{
i++;
}
return(i);
}
我估计程序里有错误 但是编译能通过 请高手指点
搜索更多相关的解决方案:
编译
----------------解决方案--------------------------------------------------------
strlen(char *p)
//不包含'\0'
----------------解决方案--------------------------------------------------------
strlen 是string.hh这个文件里面的函数
要求是自己写个函数 来求字符串的长度
楼上成都哪个学校的 我电子科大成都学院。。
----------------解决方案--------------------------------------------------------
是不?
国腾学院?
我有个同学在那.....
我在看看
----------------解决方案--------------------------------------------------------
就是哈
你是哪学校的 我才大一哈
感觉学C学的好浅哦
----------------解决方案--------------------------------------------------------
改成这样就行
#include <stdio.h>
#include <string.h>
#include <iostream.h>
#include <stdio.h>
#include <string.h>
int len(char *p);
void main()
{
char s1[20];
int n;
char *p=s1;
gets(p);
n=len(s1);
printf("%d\n",n);
}
int len(char *p)
{
int i=0;
while(*p!='\0')
{
i++;
p++;
}
return(i);
}
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#include <string.h>
int len(char *p);
void main()
{
char s1[20],*p;
int n=0;
p=&s1;
gets(s1);
printf("%d",len(p));
getch();
}
int len(char *p)
{
int i=0;
while(*p!='\0')
{
i++;p++;
}
return(i);
}
----------------解决方案--------------------------------------------------------
谢谢啊
发现刚才打错几个地方 我试下你们写的
----------------解决方案--------------------------------------------------------
这样就ok了
浅吗?
你要把他运用自如还是不简单的哦~~
我不是学计算机专业的
只是业余爱好~
都大三了~~才开始接触....
后悔没早点对他感兴趣~~
想出来从事这方面~
不知道还晚不
哎.......
----------------解决方案--------------------------------------------------------
谢谢啊
我发现我以前的问题在哪了
就是在len函数里面WHILE循环中 没有P++
谢谢大家
----------------解决方案--------------------------------------------------------