Moin,
Ich programmiere ( oder versuche es ) gerade in C und nun habe ich ein
paar Fragen zur Zeigerarithmetik ;)
und zwar möchte in ein globales Array in verschieden funktionen
verarbeiten bzw füllen.
Das Array soll in 1-X mal befüllt werden mit Werten und nach jedem
Funktionsaufruf soll sich das Programm merken bis wohin er das globale
Array befüllt hat um es bei einem anderen Funktionsaufruf wieder weiter
ab dort zu befüllen
1 | int array[500]
|
2 |
|
3 | int funktion1 ( int *arrayptr )
|
4 | {
|
5 | // check bis wohin gefüllt wurde
|
6 | // array weiter mit Werten füllen bis array[x]
|
7 | // wenn array voll: return -1;
|
8 | }
|
9 |
|
10 | int funktion2 ( int *arrayptr )
|
11 | {
|
12 | // check bis wohin gefüllt wurde
|
13 | // array weiter mit Werten füllen bis array[x]
|
14 | // wenn array voll: return -1;
|
15 | }
|
16 |
|
17 | void main ()
|
18 | {
|
19 | int returnWert = 0;
|
20 |
|
21 | while (returnWert>=0)
|
22 | {
|
23 | returnWert = funktion1(array);
|
24 | returnWert = funktion2(array);
|
25 | .
|
26 | .
|
27 | .
|
28 | }
|
29 | }
|
Ich hoffe ich konnte mich auf die schnelle verständlich ausdrücken,
meine Frage dazu jetzt : merkt sich der Pointer in der Funktion die
stelle an der er stand ? bzw gibt es eine geschicktere Möglichkeit um
ein globales Array mit verschiedenen Funktionen nach und nach zu füllen
?
grüße