c语言:写一个函数,求一个字符串的长度.在main函数中输入字符串并输出其长度

#include<iostream>

using namespace std;

int main()

{

int character(char *a);

char a[20];

int length;

cout<<"请输入一个字符串:"<<endl;

cin>>a;

length=character(a);

cout<<"字符串长度为:"<<length<<endl;

return 0;

}

(1)字符串长度函数c语言扩展阅读:

return用法:

在C++的关键字,它提供了终止函数执行的一种方式。当return语句提供了一个值时,这个值就成为函数的返回值.

1、C

在C89中,main()是可以接受的。Brian W.Kernighan和Dennis M.Ritchie的经典巨著The C programming Language 2e(《C程序设计语言第二版》)用的就是main()。不过在最新的C99标准中,只有以下两种定义方式是正确的:

int main(void)

int main(int argc,char*argv[])

当然,我也可以做一点小小的改动。例如:char*argv[]可以写成char**argv;argv和argc可以改成别的变量名(如intval和charval),不过一定要符合变量的命名规则。

如果不需要从命令行中获取参数,请用int main(void);否则请用int main(int argc,char*argv[])。

main函数的返回值类型必须是int,这样返回值才能传递给程序的激活者(如操作系统)。

如果main函数的最后没有写return语句的话,C99规定编译器要自动在生成的目标文件中(如exe文件)加入return 0;,表示程序正常退出。不过,我还是建议你最好在main函数的最后加上return语句,虽然没有这个必要,但这是一个好的习惯。

注意,vc6不会在目标文件中加入return 0;,大概是因为vc6是98年的产品,所以才不支持这个特性。现在明白我为什么建议你最好加上return语句了吧!不过,gcc3.2(Linux下的C编译器)会在生成的目标文件中加入return 0;。

2、C++

C++98中定义了如下两种main函数的定义方式:

int main()

int main(int argc,char*argv[])

int main()等同于C99中的int main(void);int main(int argc,char*argv[])的用法也和C99中定义的一样。同样,main函数的返回值类型也必须是int。

如果main函数的末尾没写return语句,C++98规定编译器要自动在生成的目标文件中加入return 0;。同样,vc6也不支持这个特性,但是g++3.2(Linux下的C++编译器)支持。

Ⅱ c语言,用函数计算字符串长度

getchar()函数的原型是 int getchar( void )
返回值是整型的
功能是:从标准输入中读取一个字符,也就是键盘敲击字符,只接收单个字符
可以用gets()函数来接收多个字符
这里的 s 接收的是该字符的ASCII码,非长度。
如果从原基础上改可以这样
int i;
char s[20]; /*字符串需要长度*/
gets( s );
i = num( s );
int num( char *s ) /* 这里的指针 ,后面学得到*/
{
}
套上去就可以了

Ⅲ c语言 计算字符串长度

C语言的抄字符串是由字符数组形式袭保存的,并约定''(ascii码值为0)作为字符串结束符。其长度为从字符串开始,到''结束,所有字符的个数,不包括''本身。

要获得字符串长度,有两种方法可以使用,使用库函数strlen()。strlen声明在string.h中,原型为int strlen(char *str);功能为求str的长度,并返回。对于字符串str, 可以用代码求长度。当str[len]为0时,退出循环,退出后的len值就是str的长度。

拓展资料:使用strlen函数,包含在头文件string.h里,功能就是计算字符串s的(unsigned int型)不包括''在内的长度。

Ⅳ 如何在c语言中计算字符串长度

C语言的字符串是由来字符数组形式保源存的,并约定''(ascii码值为0)作为字符串结束符。其长度为从字符串开始,到''结束,所有字符的个数,不包括''本身。

要获得字符串长度,有两种方法可以使用,使用库函数strlen()。strlen声明在string.h中,原型为int strlen(char *str);功能为求str的长度,并返回。对于字符串str, 可以用代码求长度。当str[len]为0时,退出循环,退出后的len值就是str的长度。

拓展资料:使用strlen函数,包含在头文件string.h里,功能就是计算字符串s的(unsigned int型)不包括''在内的长度。

Ⅳ C语言哪个函数可以测定字符串的长度

C语言中,计算字符串长度的函数为strlen。
1 形式:
int strlen(const char *s);
2 头文件:
string.h
3 功能:
计算字符串s的长度,并返回。

Ⅵ c语言:编写一个函数求给定字符串长度

方法一:数组方式

代码如下:

&lt;span style="font-size:18px;"&gt;#include&lt;stdio.h&gt;

#include&lt;assert.h&gt;

int my_strlen(char const*str)

{

int count=0;

assert(str);//断言,判断指针的有效性

while(*str++!=NULL)

{

count++;

}

return count;

}

int main()

{

char arr[30]="trouble is a friend.";

printf("%d ",my_strlen(arr));

getchar();

return 0;

}&lt;/span&gt;

运行结果:

方法二:指针方式

说明:当两个指针都指向同一个数组中的元素,指针减指针就是指针与指针之间元素的个数;两个地址相加没有实际意义。

代码如下:

&lt;span style="font-size:18px;"&gt;#include&lt;stdio.h&gt;

int my_strlen(char const*str)

{

char const*tmp=str;

while(*str!='')

{

str++;

}

return str-tmp;

}

int main()

{

char arr[30]="trouble is a friend.";

printf("%d ",my_strlen(arr));

getchar();

return 0;

}&lt;/span&gt;

Ⅶ c语言如何求字符串长度

我的方法和楼上的大同小异用指针法:#include "stdio.h"
void main()
{char str[128];<br> char * p;<br> int count=0;<br> p=str;<br> gets(str);<br> while(*p++!='\0')<br> count++;<br> printf("%d",count);<br>}非指针法(这个方法是调用系统函数,比之自己写的函数简单明了):#include "stdio.h"
#include "string.h"
void main()
{char str[128];<br> gets(str);<br> printf("%d",strlen(str));<br> }

Ⅷ C语言 字符串长度

这个字符串长度为10个字符。

你可以用strlen("ab'1'\\\12803")来求这个字符串的长专度。
也可以用sizeof("ab'1'\\\12803")来求,但是这属个求出的结果是多了一个字符串结束符\0。

你可以试着输出这个字符串看看是不是10个字符。

实际上,这10个字符分别为:

1、a
2、b
3、'
4、1
5、'

6、\\(\\表示:前一个表示这是一个转义字符,后一个才是字符串中的真实字符)

7、\12(同上,\表示这是一个转义字符,其后面的1~3个数字位是一个八进制数,在这里,第3个数字为8,所以它不是这个八进制数的一部分,即这个八进制数应该是12,转换为10进制数即为10,对应的ASCII码为一个换行符)

8、8
9、0
10、3

注:\用来说明一个转义字符,如\\表示反斜杠字符“\”,\ddd表示1~3位八进制数所代表的字符(ASCII码),\xhh表示1~2位十六进制数所代表的字符。

Ⅸ c语言求字符串长度,的函数理解

C语言中来字符串长度的函数源是strlen(),一个字符的长度为1;
函数原型:
unsigned
int
strlen
(char
*s);头文件:
#include
<string.h>参数说明:s为指定的字符串;
功能说明:strlen()用来计算指定的字符串s
的长度,不包括结束字符'\0';
返回值:返回字符串s
的字符数;
注意:strlen()
函数计算的是字符串的实际长度,遇到第一个'\0'结束。
示例:
#include<stdio.h>#include<string.h>int
main(){
char
str[]
=
"ab\nxyz";//\n为回车字符,占一个字节
printf("strlen(str)=%d\n",
strlen(str));
return
0;}//输出结果:strlen(str)=6
收起

Ⅹ c语言,计算字符串长度

首先是你的No1:
char
x[12]="ab\n\\012\\\";
这句貌似是错误的,调试不能通过。在结尾加上n就是改为:char
x[12]="ab\n\\012\\\n";后程序版才能运行。结权果是9的原因是:
for(i
=
0;i<10;i++){
printf("%c,",x[i]);}
在程序中加入这句话就明白了。
显示的字符依次为

a,b,换行,\,1,2,\,\,换行。
后面的同理你加上for(i
=
0;i<10;i++){
printf("%c,",x[i]);}
这句话
自己调试什么都明白了