> uint16_t randomrange(uint16_t von, uint16_t bis) {
> //Zufallszahlen //srand();
> randomrange = von + rand() % ( bis - von ); // <== Zeile 16
> //randomrange = ( rand() * (bis-von) ) + von;
> };
>
> Die Fehlermeldung lautet
> "../test03.c:16: error: invalid lvalue in assignment"
>
> Was mache ich denn da falsch.
Du programmierst Pascal.
In Pascal gibt man aus einer Funktion einen Wert zurück,
indem man ihn einer Pseudovariablen mit dem Namen der Funktion
zuweist. In C schreibt man einfach
uint16_t randomrange(uint16_t von, uint16_t bis) {
return von + rand() % ( bis - von );
}
> "../test03.c:16: error: invalid lvalue in assignment"
'assignment' sollte klar sein. Das ist eine 'Zuweisung'
'lvalue' steht für 'left hand value', also den linken
Teil einer Zuweisung:
lvalue = rvalue;
Und dieser lvalue ist invalid, also ungültig.