C++求解数组长度的方法(包含求解vector和字符串求解的方法)
2023-12-30 20:13:45
对于一个C++的初学者,在如何求解数组长度问题上可能会稍有混乱,因为求解长度的方法有很多,比如size()、length()、sizeof()等函数,今天我就和大家一起学习如何求解数组长度,并探讨size()、length()、sizeof()这三个函数的用法与区别。
1.sizeof()函数
首先解答如何求解数组长度这个问题,大家应当使用sizeof()函数。sizeof()函数的功能是确定数据类型或变量在内存中所占的字节数。举个例子:
#include<iostream>
#include<cstddef>
using namespace std;
int main(void) {
int a[5] = { 1,2,3,4,5 };
cout << "int类型的字节数为:" << sizeof(int) << endl;
cout << "数组a的总字节数为:" << sizeof(a) << endl;
cout << "数组a中每一个元素占字节数为:" << sizeof(a[0]) << endl;
cout << "数组a的长度为:" << sizeof(a)/ sizeof(a[0]) << endl; //求解数组a的长度
}
运行后得到的结果是:
?可以看到,使用sizeof(a)/ sizeof(a[0])的方法就可以求出数组的长度。
2.size()函数
size()函数可以求解字符串长度以及vector类型的长度,但是不可以求解数组的长度。举个例子:
#include<iostream>
#include<vector>
using namespace std;
int main(void) {
vector<int>b;
string str = "abcabc";
for (int i = 0; i < 10; i++) {
b.push_back(i);
}
cout << "b的长度为:" << b.size() << endl; //求解b的长度
cout << "str的长度为:" << str.size() << endl; //求解str的长度
}
结果如下:
?可以看到使用size()函数可以轻松求解出字符串长度以及vector类型的长度,但是若对数组使用size()函数,将会报错,大家可以自行尝试,我就不做演示了。
3.length()函数
length()函数只用于求解字符串长度,举个例子:
#include<iostream>
using namespace std;
int main(void) {
string str = "abcabc";
cout << "str的长度为:" << str.length() << endl; //求解str的长度
}
若将string修改为数组,将会报错,如下图所示:
文章来源:https://blog.csdn.net/shnhe/article/details/135243381
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!