Qt获取字符串大小

可以用成员函数size、length和count来获取字节数组的大小。除了名字不同,这3个函数是等同的,函数的原型声明如下:

int size();
int length();
int count();

这3个函数返回字节数组中的字节数。Size()函数的用法如下:
 

QByteArray ba("Hello")

int n = ba.size();

执行后,n等于5。

可见,size()并不包含字符串末尾自动添加的'\0'。另外,如果以字符串形式初始化,中间有'\O',则size()不会统计'\O'及其后面的字符。

QByteArray ba2("He\ollo");
int n = ba2.size();

执行后,n等于2。

通过resize分配空间,然后通过逐个赋值来进行初始化的话,中间某个字节数据是'\0',并不会被size()函数截断。比如:

QByteArray ba3;
ba3.resize (6);
ba3[0] = 0x3c;
ba3[1] = '\0';
 ba3[2] =0×64;
ba3[3] =0x18;
ba3[4] - 0xca;
ba3.data()[5]=0x31;
n=ba3.size(): //n==6

  • 18
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

行者..................

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值