Es wäre sehr hilfreich gewesen, die Meldungen des Compilers zu zitieren:
1 | test.c: In function ‘myFunk’:
|
2 | test.c:6:13: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
|
3 | *ptrVar = textGlobal;
|
4 | ^
|
textGlobal ist ein unveränderbarer String.
ptrVar ist ein Zeiger auf einen änderbaren String.
Deswegen soll ptrVar nicht auf textGlobal zeigen. Die Typen passen nicht
zusammen.
Lösung:
1 | const char textGlobal[] = "test text";
|
2 |
|
3 | void myFunk(const char **ptrVar)
|
4 | {
|
5 | *ptrVar = textGlobal;
|
6 | }
|
7 |
|
8 | int main()
|
9 | {
|
10 | const char * local = 0;
|
11 | myFunk(&local);
|
12 | }
|
> const char *
Bedeutet: Ein änderbarer Zeiger auf einen nicht änderbaren String.
Nachtrag: Hoppla, andere haben mich beim Antworten überholt.