Unknown schrieb:
> Peter Dannegger schrieb:
>> Unknown schrieb:
>>> hab hier einen Ausschnitt aus einem Code
>>
>> Ausschnitte sind immer ne ganz schlechte Idee.
>> Laß die Deppen vom Forum doch ruhig raten, wozu das sein könnte, die
>> haben ja sonst nichts besseres zu tun.
>
>
> dass hier immer gleich schwache Kommentare kommen..
> Es ging hier nur zum Verstehen der Syntax, da ist der gezeigte Code
> vollkommen ausreichend.
Dann muss ich dir attestieren, dass du ein C-Buch brauchst, wenn du 
einen Cast nicht erkennst, wenn du einen siehst.
Mehr lässt sich dann aus dieser Fragestellung nicht ableiten.
Syntax ist eine Sache. Aber Syntax ist nicht alles. Denn die 
tieferliegende Frage nach dem "Warum?" oder dem "Was wird bezweckt" 
lässt sich nicht beantworten.
Du fragst ja selber
> aber wieso ist dieser Typecast nötig?
der Cast wurde höchst wahrscheinlich eingeführt, um die Warnung vom 
Compiler zu unterdrücken, dass hier ein volatile implizit verloren geht. 
Durch den Cast sagt der Programmierer dem Compiler "Halts Maul"
Die eigentliche Frage ist aber: War das eine gute Idee? Wer von den 
beiden hat eigentlich recht? Der Programmierer oder der Compiler? Ist 
das wegcasten des volatile eine gute und harmlose Idee, oder hatte der 
Compiler recht, als er die Warnung ausgesprochen hat?
Ohne verwendenden Code lässt sich das nicht entscheiden. Im Zweifelsfall 
plädiere ich für "Der Compiler hatte recht und der Programmierer wird zu 
5 Stunden debuggen ohne Bewährung bei verschärften Optimizerbedingungen 
verurteilt".
Das wegcasten von 'const' oder 'volatile' ist selten eine gute Idee. 
Compiler warnen nicht ohne Grund vor derartigen impliziten Operationen. 
Dann gibt es eben 2 Möglichkeiten. Entweder man stellt den Compiler mit 
einem explizitem Cast und einem "Kusch, ich bin der Herr im Haus" ruhig. 
Oder die Sache ist schwerwiegender und ein paar Datentypen müssen 
angepasst werden.