一段求字符串长度的代码,求改错
- C/C++ code
#include "stdafx.h"int _tmain(int argc, _TCHAR* argv[]){ int len=0; char s1[80]; int str_len(char); printf("enter the string:\n"); scanf("%s",s1); len=str_len(s1[80]); printf("the length is :%d\n",len); return 0;}int str_len(char s[]){ int i=1; while(s[i]!='\0') { i++;} return i;}
[解决办法]
不知道这里是不是有啥陷阱和玄机..
我随便改了一个,是这个意思么......
#include<stdio.h>
int str_len(char[]);
int main()
{
int len=0;
char s1[80];
printf("enter the string:\n");
scanf("%s",s1);
len=str_len(s1);
printf("the length is :%d\n",len);
return 0;
}
int str_len(char s[])
{
int i=0;
while(s[i]!='\0')
{
i++;
}
return i;
}
[解决办法]
函数的声明在main之外
[解决办法]
- C/C++ code
#include <iostream.h>#include <stdio.h>int main(int argc, char* argv[]){ int len=0; char s1[80]; int str_len(char*); printf("enter the string:\n"); scanf("%s",s1); len=str_len(s1); printf("the length is :%d\n",len); return 0;}int str_len(char* s){ int i=1; while(s[i]!='\0') { i++;} return i;}