Beschränken der Funktion der port vom Arduino

Bin ich jetzt die Portierung von arduino-code für stm32(c/c++). Bitte helfen Sie mir mit diese Funktion:

constrain(x, a, b)

Gibt

x: wenn x ist zwischen a und b

a: wenn x ist weniger als ein

b: wenn x ist größer als b

Beispiel

sensVal = constrain(sensVal, 10, 150);

//limits range of sensor values to between 10 and 150 
Diese Funktion ist trivial - was haben Sie Probleme?
Ist das richtig? pastebin.com/trTi6x3G
Nein, das ist nicht richtig. In C++ müssen Sie einen Typ angeben, der für jede variable, sowie ein Rückgabe-Typ für jede Funktion. Ihre Parameter haben keine Typen und Ihre Funktion Rückgabe-Typ void, was bedeutet, dass es nicht einen Wert zurückgeben.
C++17 eingeführt, eine ähnliche Funktion std::Klammer() - en.cppreference.com/w/cpp/algorithm/clamp Jeder compiler unterstützt C++17 soll es unterstützen

InformationsquelleAutor SevenDays | 2012-01-20

Schreibe einen Kommentar