Namespaces
Variants
Actions

How to handle individual bits using QBitArray in Qt

Jump to: navigation, search

This code snippet demonstrates how to handle individual bits in Qt using QBitArray.

QBitArray is an array of the bits, each of which can be handled separately. It also supports bitwise AND, OR, NOT, XOR operation similar to standard C++.

Article Metadata

Tested with
Devices(s): Emulator

Compatibility
Platform(s): Qt

Platform Security
Signing Required: Self-Signed
Capabilities: None

Article
Keywords: QBitArray
Created: james1980 (26 Jan 2009)
Last edited: hamishwillee (11 Oct 2012)

Preconditions

  • Download and install the Qt SDK

Various Function

  • Replaces len bytes from index position pos with the byte array after, and returns a reference to this byte array.
QByteArray x("Say yes!");
QByteArray y("no");
x.replace(4, 3, y);
  • Sets the byte array to the printed value of n in base base (10 by default) and returns a reference to the byte array. The base can be any value between 2 and 36.
QByteArray ba;
int n = 63;
ba.setNum(n);      
ba.setNum(n, 16); 
  • Returns the number of bytes in this byte array.
QByteArray ba("Hello");
int n = ba.size();          
ba.data()[0];               
ba.data()[4];               
ba.data()[5];        


Source File

More About QBitArray visit:http://pepper.troll.no/s60prereleases/doc/qbytearray.html

#include <QApplication>
#include <QBitArray>
#include <QWidget>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
 
QWidget *win = new QWidget;
QBitArray x(15,true); // Create a bit arrray x of the size 15 and set all the bits. Second argument is optional.
// Second way to initialize a bit array
QBitArray a;
a.resize(2);
a[0] = false;
a[1] = true;
// Third way to initialize a bit array
QBitArray a(2);
a.setBit(0, false);
a.setBit(1, true);
QBitArray x(4);
x.setBit(2, true);
// x: [ 0, 0, 1, 0 ]
 
QBitArray y(4);
y.setBit(3, true);
// y: [ 0, 0, 0, 1 ]
 
x |= y;//OR operation
// x: [ 0, 0, 1, 1 ]
 
x &= y; // AND operation
// x: [ 0, 0, 0, 1 ]
 
x ^= y; // XOR operation
// x: [ 0, 0, 0, 0 ]
 
x = ~x; // NOT operation
// x: [ 1, 1, 1, 1 ]
 
}
This page was last modified on 11 October 2012, at 04:17.
134 page views in the last 30 days.
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved