CHar Array in eine String - Wie?!

OP #1892509
Lesenswert?

Hi,

ich habe ein Char Array alla:
1
unsigned char a,b;
2
unsigned char text[2];
3

4
text[0] = a;
5
text[1] = b;
6
text[2] = 0x10;
Mein problem ist nun, daß ich das in ein String alla
1
unsigned char string[];
 umformen will. Also in etwa so:
1
 string = {text[0], text[1], text[3]};
 Aber das geht ja bekanntlich nich...
Und mir fehlt einfach die zündende Idee!!!
Weiß jemand einen Tipp?!

Grüße,
Matze
#1892511
Lesenswert?

> Und mir fehlt einfach die zündende Idee!!!

C-Buch lesen!
Oder soll man auch dir das vorlesen als Gutenachtgeschichte?

Mal auf den ersten Blick:

- text hat nur zwei Elemente, trotzdem packst du drei rein
  (bzw. zwei rein und ein drittes dahinter, auf das vierte Element
  text[3] greifst du auch gleich noch zu)

- dazu würde noch die abschließende 0 gehören (schon etwas
  davon gehört?)

- dann kann man einen solchen String mit strcpy() kopieren.

Das steht alles in jedem guten C-Buch.

(Falls es hier überhaupt um C geht)
Gast #1892526
Lesenswert?

Hallo

In C gibt es eigentlich keine Strings an sich. Strings sind nur 
Chararrays die mit einer = abgeschlossen werden, damit die 
Stringfunktionen wissen wo das ende des Strings ist.
Bei deinem Beispiel ware das:

unsigned char a,b;
unsigned char text[4];

text[0] = a;
text[1] = b;
text[2] = 0x10;
text[3] = 0x00; //alternativ geht auch text[3] = '\0';

Gruß
BlabLa

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren