Seite 1 von 1

QByteArray mit einer bestimmten Größe erzeugen

Verfasst: 12. November 2009 16:08
von schlingel
Hallo,

ich möchte ein QByteArray mit einer bestimmten Größe erzeugen. Dafür könnte ich

Code: Alles auswählen

QByteArray::QByteArray ( const char * data, int size )
Constructs a byte array containing the first size bytes of array data.
If data is 0, a null byte array is constructed.
QByteArray makes a deep copy of the string data.
nehmen. Ich weiß aber nicht, was ich wie übergeben muss. Ich habe verschiedene probiert, bekomme aber immer errors beim Kompilieren von dem Quelltext:

Code: Alles auswählen

            int DataSize = 77777;
            const char DataChar = '0';
            QByteArray Data = new QByteArray(DataChar, DataSize);
Danke

Verfasst: 12. November 2009 16:28
von Mani99
Ich würds laut doku umgekehrt versuchen:

Deine version:

Code: Alles auswählen

int DataSize = 77777;
const char DataChar = '0';
QByteArray Data = new QByteArray(DataChar, DataSize); 
Version laut doku:

Code: Alles auswählen

int DataSize = 77777;
const char DataChar = '0';
QByteArray Data = new QByteArray(DataSize, DataChar);
BTW: Wäre die fehlermeldung auch hilfreich!

Verfasst: 12. November 2009 16:33
von schlingel
Mani99 hat geschrieben:Ich würds laut doku umgekehrt versuchen:

Deine version:

Code: Alles auswählen

int DataSize = 77777;
const char DataChar = '0';
QByteArray Data = new QByteArray(DataChar, DataSize); 
Version laut doku:

Code: Alles auswählen

int DataSize = 77777;
const char DataChar = '0';
QByteArray Data = new QByteArray(DataSize, DataChar);
BTW: Wäre die fehlermeldung auch hilfreich!
Stimmt, bei beiden bekomme ich:

Code: Alles auswählen

main.cpp:72: error: conversion from `QByteArray*' to non-scalar type `QByteArray' requested

Verfasst: 12. November 2009 16:38
von Herzogswalder
vergessen.

Verfasst: 12. November 2009 16:39
von Mani99
Herzogswalder hat geschrieben:vergessen.
Außerdem!

Code: Alles auswählen

QByteArray *Data = new QByteArray(DataChar, DataSize); 

Verfasst: 12. November 2009 17:08
von Christian81
Und warum überhaupt einen QByteArray-Ptr?

Verfasst: 12. November 2009 17:47
von schlingel
Herzogswalder hat geschrieben:vergessen.
Vor welcher Variable bitte?

Verfasst: 12. November 2009 17:47
von schlingel
Mani99 hat geschrieben:
Herzogswalder hat geschrieben:vergessen.
Außerdem!

Code: Alles auswählen

QByteArray *Data = new QByteArray(DataChar, DataSize); 
Ist das der richtige Aufruf?

Verfasst: 12. November 2009 18:56
von Herzogswalder
Ja, aber das fällt schon unter C++-Basics!

Verfasst: 12. November 2009 21:36
von solarix
[edit]
nach einem langen Arbeitstag mist geschrieben ... :wink: