Wirklich dumm C++ Frage, aber ich sehe es nicht in der Art und Weise abgedeckt, wie ich es brauche. Ich habe einen const Char *, den ich verschiedene Werte aus und in ihre eigenen Char * ziehen möchte. Zum BeispielKombiniere Char, um Char *
const char* atr;
//
//Data is placed in atr
//
//Here's what I want to do, but obviously this doesn't compile
char* _ts = atr[0] + atr[1];
char* _t0 = atr[2] + atr[3];
Vielen Dank im Voraus. Ich bin ein C++ Entwickler von Tag zu Tag, der im Grunde auf C++ 11 und darüber hinaus angesprochen wurde, also ist es etwas komisch, sich mit Zeichenzeigern zu befassen.
Versuchen Sie, Zeichen zu verketten? Oder versuchen Sie, Byte-Werte zusammenzufügen? – callyalater
Dies ist Pointer artihmetics, siehe http://www.tutorialspoint.com/cprogramming/c_pointer_arithmetic.htm Ihr Zeiger 'atr' ist' const' und zeigt daher immer auf eine bestimmte Stelle im Speicher. Wenn Sie auf die folgenden Bytes (Zeichen) zugreifen wollen, müssen Sie die in 'atr' gespeicherte Adresse in einem anderen' char * 'verwenden und dann mit Zeigerarithmetik auf die folgenden Bytes (char) zugreifen, zB mit' memcpy' (http://www.cplusplus.com/reference/cstring/memcpy/) –
Sie müssen Speicher reservieren. – SLaks