Hallo
Ich würde gerne um meinen Code zu halbieren eine Funktion schreiben, die
2 Variablen addiert und das aber nur tut wenn das ergebniss nicht
negativ ist. Nur ich will, dass ich sowohl 8bit, als auch 16bit und
32bit Variablen nutzen können. Auerßdem ist die erste Var immer
unsigned.
Meine Idee wäre sowas:
1 | void Add(uint32_t* source, int32_t* add)
|
2 | {
|
3 | if((int64_t)*source + *add > 0)
|
4 | *source += *add;
|
5 | }
|
Allerdings kann man da doch nur int32_t übergeben und ich glaube auch,
dass sie nicht ganz funktioniert.