用c++设计一个函数,以参数方式输入一个字符串,返回该字符串的长度

我要代码不要解释!!!不要理论!!!不要复制!!!谢谢,只要代码就行... 我要代码不要解释!!!不要理论!!!不要复制!!!谢谢,只要代码就行 展开
 我来答
锐青旋7654
2011-06-30 · TA获得超过167个赞
知道答主
回答量:463
采纳率:100%
帮助的人:280万
展开全部
传入指向首字符的指针即可。
#include<cstring>
std::size_t getlength(const char* s)
{
return std::strlen(s);
}
不用库函数的话,可以这样:
int getlength(const char* s)
{
const char* t = s;
while(*t != '\0')
++t;
return t - s;
}
sizeof在编译期返回对象所占空间的字节数。对于数组,返回数组的长度(而不是字符串长度);对于字符串字面量,返回字符串长度加1(字面量的类型是数组类型,长度等于字符串长度加结尾的'\0'占的1字节);对于指针,返回指针本身所占的字节数,在32位平台下一般为4,和字符串长度无关。因此所有情况下sizeof都无法直接计算字符串的长度。
====
[原创回答团]
百度网友66c55b2
2011-06-30 · TA获得超过1866个赞
知道小有建树答主
回答量:3035
采纳率:0%
帮助的人:0
展开全部
int alphabetic(char); 这是函数声明,也可以写成这样:int alphabetic(char c);两种写法都是正确的,只是第二种方法更加明了
int longest(char []); 也是一样的道理
关于if(alphabetic(string[i]))是指如果函数alphabetic(string[i])返回0就不执行,否则执行,如alphabetic(string[i])=1,则执行if语句,if(flag)也是一样的用法,如果flag=1,4……就表示符合条件,反之flag=0则表示不符合条件

函数int longest(char string[]) 的作用是找出最长字符串第一个字符所在的位置(place),
这东西最主要还是理解,以后还有什么问题可以问我啊,我也是初学的,想同大家交流一下啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雨晔bf
2011-06-29 · TA获得超过3444个赞
知道小有建树答主
回答量:576
采纳率:100%
帮助的人:480万
展开全部
没有编译器,随手写了个,有问题自己调吧

int strlen(const char *pStr)
{
int ret=0;
if(NULL == pStr)
{
return ret;
}
while('\0' != *pStr++)
{
ret++;
}
return ret;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yekui1990
2011-07-04
知道答主
回答量:5
采纳率:0%
帮助的人:3.8万
展开全部
#include<iostream.h>

int mystrlen(char *str)
{
int cnt = 0;
while((cnt++,*str++));
return cnt-1;
}

int main()
{
char str[100];
int length;
cout<<"输入字符串:"<<endl;
cin>>str;
length = mystrlen(str);
cout<<str<<"长度为:"<<length<<endl;
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lb451035525
2011-06-30 · TA获得超过434个赞
知道答主
回答量:309
采纳率:0%
帮助的人:309万
展开全部
size_t GetStrLen(const char * strSrc)
{
if(!strSrc) return -1;
size_t i = 0;
while(*strSrc++ != '\0')
{
++i;
}
return i;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式