$nooc
Mitglied
Hallo Leute.
Habe hier ein Problem mit der Pointer-Arithmetik.
Meine Funktion soll einem char Array die Adressen von bestimmten Namen übergeben.
Hierzu wird ihr ein Pointer auf ein eindimensionales Array übergeben.
In der Funktion will ich dann den Speicher für die Anzahl an char* reservieren,
die ich zur Übergabe der Namen benötige.
Aber anscheinend mache ich da irgendwas falsch, kann mir da jemand bitte helfen?
Vielen Dank.
Habe hier ein Problem mit der Pointer-Arithmetik.
Meine Funktion soll einem char Array die Adressen von bestimmten Namen übergeben.
Hierzu wird ihr ein Pointer auf ein eindimensionales Array übergeben.
In der Funktion will ich dann den Speicher für die Anzahl an char* reservieren,
die ich zur Übergabe der Namen benötige.
Aber anscheinend mache ich da irgendwas falsch, kann mir da jemand bitte helfen?
Vielen Dank.
C++:
#include <iostream>
class Object
{
private:
// ...
public:
int write (char*** message)
{
**message = new char[10];
**message[0] = m_names.getName(0);
**message[1] = m_names.getName(0);
**message[2] = m_names.getName(0);
return 0;
}
};
int main()
{
char **msg = new char*;
Object obj;
obj.write(&msg);
printf("%s", msg);
getchar();
return 0;
}