Gast
#4106689
Hallo, ich bin neu in der C-Programmierung, habe vorher nur in Java programmiert. Möchte gerne eine Datei zeilenweise auslesen und die Zeilen dann splitten. Mein bisheriger Code:
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 | |
70 | |
71 | |
72 | |
73 | |
74 | |
75 | |
76 | |
77 | |
78 | |
79 | |
80 | |
81 | |
82 | |
83 | |
84 | |
85 | |
86 | |
87 | |
88 | |
89 | |
90 | |
91 | |
92 | |
93 | |
94 | |
95 | |
96 | |
97 | |
98 | |
99 | |
100 | |
101 | |
102 | |
103 | |
104 | |
105 | |
106 | |
107 | |
Es scheint zu funktionieren, wie ich es mir vorgestellt hatte. Allerdings bin ich mir unsicher, ob ich den Speicher "richtig und komplett" freigegeben habe. Insbesondere habe ich Bedenken bei der split-Funktion, ob ich dort "string" noch freigeben muss. strtok verändert "string" ja und liefert Zeiger aus selbigen zurück. Reicht es dann, wenn ich das jeweilige aktuelle Token freigebe und nicht "string" als Ganzes am Ende der Funktion? Und eine kleine Frage nebenbei: Für diese Kleinigkeit wirkt mir das Programm ziemlich "aufgebläht", obwohl ich von Java komme. Gibt es eine elegante Implementation für diese Funktionalität? Ich bin für jede Antwort dankbar.