Jos vaikkapa lämpötilasensorin kirjasto antaa lämpötilan desimaalilukuna (float-muuttuja) ja haluaisitte käyttää kyseistä arvoa kokonaislukuna koodissa ja koodi valittaa että luku ei ole oikeaa tyyppiä, tässä on keino. Laittakaa liukuluvun eteen suluissa sen muuttujatyypin nimi miksi haluatte sen muuntaa kyseisessä toimituksessa:
float lampo = 2,2
int opmal = 2
if ( (int) lampo == opmal)
{
tee jotakin
}
Tässä on perusteellisempi esimerkki, joka havainnollistaa että (int) float muuttujan edessä vaikuttaa sen vertaamiseen int muuttujaan:
float arvo = 1.1; // Tarinan sankarit...
int karvo = 1;
void setup() {
Serial.begin(9600);
}
// the loop routine runs over and over again forever:
void loop() {
Serial.println("Onko(int)arvo sama kuin karvo?");
if((int)arvo == karvo)
{
Serial.println("joo");
}
else
{
Serial.println("ei");
}
Serial.println("Onko puolestaan arvo sama kuin karvo?");
if(arvo == karvo)
{
Serial.println("joo");
}
else
{
Serial.println("ei");
}
delay(2000);
}
Jos vaikkapa lämpötilasensorin kirjasto antaa lämpötilan desimaalilukuna (float-muuttuja) ja haluaisitte käyttää kyseistä arvoa kokonaislukuna koodissa ja koodi valittaa että luku ei ole oikeaa tyyppiä, tässä on keino. Laittakaa liukuluvun eteen suluissa sen muuttujatyypin nimi miksi haluatte sen muuntaa kyseisessä toimituksessa:
Tässä on perusteellisempi esimerkki, joka havainnollistaa että (int) float muuttujan edessä vaikuttaa sen vertaamiseen int muuttujaan: