QByteArray mit einer bestimmten Größe erzeugen

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
schlingel
Beiträge: 13
Registriert: 7. Oktober 2009 16:57

QByteArray mit einer bestimmten Größe erzeugen

Beitrag 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
Mani99
Beiträge: 244
Registriert: 15. April 2009 10:46
Wohnort: München

Beitrag 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!
schlingel
Beiträge: 13
Registriert: 7. Oktober 2009 16:57

Beitrag 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
Herzogswalder
Beiträge: 79
Registriert: 11. Oktober 2009 00:37
Wohnort: Dresden

Beitrag von Herzogswalder »

vergessen.
Mani99
Beiträge: 244
Registriert: 15. April 2009 10:46
Wohnort: München

Beitrag von Mani99 »

Herzogswalder hat geschrieben:vergessen.
Außerdem!

Code: Alles auswählen

QByteArray *Data = new QByteArray(DataChar, DataSize); 
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Und warum überhaupt einen QByteArray-Ptr?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
schlingel
Beiträge: 13
Registriert: 7. Oktober 2009 16:57

Beitrag von schlingel »

Herzogswalder hat geschrieben:vergessen.
Vor welcher Variable bitte?
schlingel
Beiträge: 13
Registriert: 7. Oktober 2009 16:57

Beitrag 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?
Herzogswalder
Beiträge: 79
Registriert: 11. Oktober 2009 00:37
Wohnort: Dresden

Beitrag von Herzogswalder »

Ja, aber das fällt schon unter C++-Basics!
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

[edit]
nach einem langen Arbeitstag mist geschrieben ... :wink:
Antworten