c++ 如何获得字符数组长度
10个回答
展开全部
C++中获得字符数组的长度可以使用strlen函数,如计算字符数组a的长度的语句是i=strlen(a)。
函数原型:extern unsigned int strlen(char *s);
头文件:#include <string.h>;
功能:计算给定字符串的(unsigned int型)长度,不包括'\0'在内;
参数说明:要计算长度的字符串数组的首地址;
返回值说明:要计算字符串的长度,不包括'\0'。
函数原型:extern unsigned int strlen(char *s);
头文件:#include <string.h>;
功能:计算给定字符串的(unsigned int型)长度,不包括'\0'在内;
参数说明:要计算长度的字符串数组的首地址;
返回值说明:要计算字符串的长度,不包括'\0'。
展开全部
字符数组的长度是不能获得的,只能获得字符串的长度。
strlen(char* str);获得字符串str的长度,以‘\0’结尾的字符串。
但是可以通过声明 char(*p)[100];来固定p指针只能指向char[100]的类型。
p的类型为char(*) [100],
int main()
{
char a[100];
char b[99];
p=&a;
p=&b; //error
}
只有在这种情况下数组的长度才有意义,其他情况字符数组的长度只是告诉编译器必须预留多少内存供该变量使用,但编译器并不维护数组的长度信息。
strlen(char* str);获得字符串str的长度,以‘\0’结尾的字符串。
但是可以通过声明 char(*p)[100];来固定p指针只能指向char[100]的类型。
p的类型为char(*) [100],
int main()
{
char a[100];
char b[99];
p=&a;
p=&b; //error
}
只有在这种情况下数组的长度才有意义,其他情况字符数组的长度只是告诉编译器必须预留多少内存供该变量使用,但编译器并不维护数组的长度信息。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用strlen()函数。
例:
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int main(){
//以上不用说吧
int a[10]={};//定义数组
for(int i=1;i<=5;i++){
cin>>a[i];
}//初始化数组
int n=strlen(a[10]);//用strlen()函数求长度
cout<<n;
return 0;
}
例:
#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int main(){
//以上不用说吧
int a[10]={};//定义数组
for(int i=1;i<=5;i++){
cin>>a[i];
}//初始化数组
int n=strlen(a[10]);//用strlen()函数求长度
cout<<n;
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用C字符串函数: int strlen (char *p),*p就是你想要的字符串
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字符数组指:char str[6] = {'1','2','3','4','5','6'}; 是这个吗?
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询