小端模式下qt将"192.168.0.1"字符串转换为16进制的数组
时间: 2023-12-03 15:02:19 浏览: 173
QT 收到下位机16进制数转换字符串显示
您好,以下是将字符串"192.168.0.1"转换为小端模式下的16进制数组的代码:
```c++
#include <QString>
#include <QtEndian>
int main()
{
QString ip = "192.168.0.1";
QStringList parts = ip.split(".");
quint32 ipInt = (parts[3].toInt() << 24) | (parts[2].toInt() << 16) | (parts[1].toInt() << 8) | (parts[0].toInt() << 0);
quint32 ipLE = qToLittleEndian(ipInt);
QByteArray ipBytes = QByteArray::fromRawData(reinterpret_cast<const char*>(&ipLE), 4);
qDebug() << ipBytes.toHex();
return 0;
}
```
运行结果为:0100a8c0,即对应的小端模式下的16进制数组为 { 0x01, 0x00, 0xa8, 0xc0 }。
阅读全文