Hallo,
mit der Übergabe von Variablen an ein Unterprogramm habe ich kein
Problem, z.B.:
1 | main
|
2 |
|
3 | uint8_t i = 0;
|
4 | .
|
5 | .
|
6 | upro (&i)
|
7 | .
|
8 | .
|
9 | //end main
|
10 |
|
11 | upro (uint8_t *pi)
|
12 | .
|
13 | .
|
14 | if (*pi = 5){
|
15 | .. dann mach was ..
|
16 | }
|
17 | //end upro
|
Nun versuche ich das mit einem Array. Habe alles mögliche gelesen und
probiert, mir schirrt der Kopf und bitte um Unterstützung (bin doch noch
C-Anfänger).
Versuch:
1 | main
|
2 |
|
3 | uint8_t Feld[5] = {0, 0, 1, 0, 0};
|
4 | .
|
5 | .
|
6 | upro (&Feld)
|
7 | .
|
8 | .
|
9 | //end main
|
10 |
|
11 | upro (uint8_t *pFeld)
|
12 | .
|
13 | .
|
14 | if (*pFeld[3] = 1){
|
15 | .. dann mach was ..
|
16 | }
|
17 | //end upro
|
Die entsprechende Definition habe ich auch in upro.h
Hierbei erhalte ich den Fehler:
main.c: warning: passing argument 1 of ‘upro’ from incompatible pointer
type
upro.h.note: expected ‘uint8_t *’ but argument is of type ‘uint8_t
*)[25]’
Ich krieg das nicht auf die Reihe, kann mir bitte jemand beim Synatx
helfen.
Bitte nicht auf C-Bücher verweisen, die habe ich schon durch.
Danke!!