La conversion de int[] String en C++

J'ai une chaîne définie comme std::string header = "00110033";
maintenant j'ai besoin de la chaîne pour contenir les valeurs d'octets de les chiffres, comme si sa construit de la façon

char data_bytes[] = { 0, 0, 1, 1, 0, 0, 3, 3};
std::string header = new std::string(data_bytes, 8).c_str());

J'ai converti la chaîne initiale à int tableau à l'aide de atoi. Maintenant, je ne suis pas sûr de savoir comment faire la chaîne. Laissez-moi savoir si il ya une meilleure approche.

Je suis incapable de comprendre votre question.
la syntaxe de la 2ème ligne n'est pas correct. Aussi, quelle est l'intention de l' new ici?
Pourquoi avez-vous besoin de faire cela? Qu'allez-vous faire si le tableau contient une valeur qui n'est pas compris entre 0 et 9?
Il est inefficace (en raison de la copie) et une fuite de mémoire (en raison de new sans stocker le pointeur correspondant delete) pour dire std::string header = (new std::string(data_bytes, 8))->c_str(); (ou quel que soit ce que tu voulais dire). Vous pouvez juste dire std::string header(data_bytes, 8); à la place.

OriginalL'auteur Manoj | 2011-03-07