Hallo,
ich versuche verzweifelt ein array an eine funktion zu übergeben. Bzw.
die Adresse als Pointer. Dann möchte ich in der Funktion die Werte über
USART ausegeben.
CCSC ist der Compiler (daher auch das printf).
Leider kommen immer falsche werte an.
ich bekomme z.B.
0x2F
und
0x27
aber nicht
0x07
und
0x01.
Wo liegt mein Denkfehler?
1 | void print_array(int ROM *array, int length);
|
2 |
|
3 | int ROM buff[128];
|
4 |
|
5 | void main() {
|
6 |
|
7 | buff[0] = 0x07;
|
8 | buff[1] = 0x01;
|
9 |
|
10 | while(TRUE) {
|
11 | print_array(buff,2);
|
12 | delay_ms(2000);
|
13 | }
|
14 | }
|
15 |
|
16 | void print_array(int ROM *array, int length) {
|
17 | int zhl;
|
18 | for(zhl=0;zhl<length;zhl++) {
|
19 | printf("/%c",array[0]);
|
20 | }
|
21 | }
|
Danke für Eure Hilfe!