Gast
#5178047
Hallo, ich verzweifle langsam an der Logik meiner Funktion, die ein "Character-array" inklusive der Länge des Arrays übergeben bekommt und daraus 3 Integer-arrays [6] mit den Zahlen 0 oder 1 füllen soll. Dafür verwende ich for schleifen die überprüfen ob eine '0' oder '1' an der jeweiligen Stelle im "Character-Array" steht. Meine Funktion hat zunächst nur bei der 1. und 3. for-Schleife funktioniert. Dann habe ich die Variablen CRelais[6],ERelais[6] und GRelais[6] als Globale Variablen und Volatile int deklariert und dann funktionierte plötzlich die 1. und 2. for-Schleife, aber die 3. nicht mehr. In der jeweils nicht funktionierenden for-Schleife werden alle Werte des Arrays auf 0 gesetzt. Das Char-array lasse ich mir zum Überprüfen in meiner Main nach der Verarbeitung ausgeben um zu überprüfen ob dieses richtig übergeben wurde. Dabei sind die einsen und nullen so gesetzt, wie ich es zuvor auch eingeben habe. Der entsprechende Teil der Funktion sieht wie folgt aus:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
33 | |
34 | |
35 | |
36 | |
37 | |
38 | |
39 | |
40 | |
41 | |
42 | |
43 | |
44 | |
45 | |
46 | |
47 | |
48 | |
49 | |
50 | |
51 | |
52 | |
53 | |
54 | |
55 | |
56 | |
57 | |
58 | |
59 | |
60 | |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | |
67 | |
68 | |
69 | |
Woran könnte es liegen, dass sich das Programm so verhält und wie kann ich das ändern? Ich entschuldige mich, falls ich etwas falsch ausgedrückt habe. Es ist mein erstes Programm, welches ich komplett alleine schreibe. Danke schonmal für eure Hilfe! LG Lisa
