Perusoperaattorit ja tyyppimuunnokset
Hallitskaa aritmeettiset, vertailu- ja loogiset operaattorit sekä implisiittiset ja eksplisiittiset tyyppimuunnokset.
Perusoperaattorit ja tyyppimuunnokset on ilmainen C++ Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu C++ Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. C++ Academy-kurssilla on yhteensä 4 oppituntia.
Aritmeettiset operaattorit
Vakiomuotoiset aritmeettiset operaattorit ovat + - * / sekä jakojäännösoperaattori %. Jakojäännös toimii vain kokonaisluvuilla.
int a = 17, b = 5;
std::cout << a + b << "\n"; // 22
std::cout << a - b << "\n"; // 12
std::cout << a * b << "\n"; // 85
std::cout << a / b << "\n"; // 3 (integer division)
std::cout << a % b << "\n"; // 2Kokonaisluku- ja liukulukujako
Kun molemmat operandit ovat kokonaislukuja, jako katkaistaan kohti nollaa. Muuntakaa toinen operandi liukulukutyypiksi saadaksenne liukulukujaon.
int a = 7, b = 2;
std::cout << a / b << "\n"; // 3
std::cout << static_cast<double>(a) / b; // 3.5Kasvatus ja vähennys
++ ja -- lisäävät tai vähentävät arvoa yhdellä. Etuliitteellinen muoto (++x) kasvattaa arvon ensin ja palauttaa sitten tuloksen. Jälkiliitteellinen muoto (x++) palauttaa alkuperäisen arvon ja kasvattaa sitä vasta sen jälkeen.
Yhdistetty sijoitus
Yhdistäkää aritmetiikka ja sijoitus: +=, -=, *=, /=, %=. Nämä muodot ovat lyhyempiä ja usein selkeämpiä.
int total = 0;
total += 5; // total = total + 5
total *= 2; // total = total * 2Vertailuoperaattorit
Kuusi vertailuoperaattoria palauttaa arvon tyyppiä bool: ==, !=, <, <=, >, >=.
Loogiset operaattorit
Yhdistäkää totuusarvoja operaattoreilla && (ja), || (tai) sekä ! (ei). Ne käyttävät oikosulkulaskentaa — jos tulos ratkeaa aikaisemmin, loppuosaa ei arvioida.
bool valid = (age >= 18) && (age < 120);
bool weekend = (day == "Sat") || (day == "Sun");Bittioperaattorit
Bittien käsittelyyn käytetään operaattoreita & (ja), | (tai), ^ (XOR), ~ (ei), << (siirto vasemmalle) ja >> (siirto oikealle).
Implisiittiset muunnokset
C++ muuntaa numeerisia tyyppejä automaattisesti monissa tilanteissa — joskus huomaamatta tarkkuutta menettäen. Olkaa varovaisia eri tyyppien yhdistelmissä.
int i = 10;
double d = i; // OK: int to double
int j = 3.7; // OK but truncates to 3static_cast: eksplisiittinen muunnos
Se on suositeltu tapa muuntaa toisiinsa liittyviä tyyppejä. Muunnos tarkistetaan käännösaikana.
double price = 9.99;
int dollars = static_cast<int>(price); // 9Muut muunnokset: reinterpret_cast const_cast
Erikoistapauksia varten on kolme muuta muunnosta:
- reinterpret_cast — tulkitsee bittikuviot uudelleen (käyttäkää harvoin)
- const_cast — poistaa const-määreen (käyttäkää vielä harvemmin)
- dynamic_cast — polymorfisten tyyppien ajonaikainen muunnos
Välttäkää C-tyylisiä muunnoksia
Vanha syntaksi (int)x on moniselitteinen — se voi tarkoittaa mitä tahansa neljästä muunnoksesta. Käyttäkää nimettyä muunnosta, joka vastaa tarkoitustanne.
Pikatarkistus
Minkä arvon lauseke 7 / 2 saa C++:ssa, kun molemmat operandit ovat tyyppiä int?
Kertaus
C++ tarjoaa aritmeettiset, vertailu-, loogiset ja bittioperaattorit. Implisiittiset muunnokset voivat hukata tietoa — suosikaa eksplisiittisiin muunnoksiin static_cast-avainsanaa ja välttäkää C-tyylisiä muunnoksia.
Opi C++ tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 51
- Oppitunnit
- 203
Usein kysytyt kysymykset
Onko oppitunti ”Perusoperaattorit ja tyyppimuunnokset” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa C++ Academy-oppimispolun 3 oppituntia, myös oppitunnin “Perusoperaattorit ja tyyppimuunnokset”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. C++ Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Perusoperaattorit ja tyyppimuunnokset”?
Hallitskaa aritmeettiset, vertailu- ja loogiset operaattorit sekä implisiittiset ja eksplisiittiset tyyppimuunnokset. Harjoittelet C++ Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni C++ Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin C++ Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.
Kuinka kauan ”Perusoperaattorit ja tyyppimuunnokset”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä C++ Academy-oppitunnilla?
Kyllä. Jokainen C++ Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- C++-kääntäjän asentaminen
- Hello World ja koontiprosessi
- Muuttujat, automaattinen tyyppipäättely ja constexpr
- Perusoperaattorit ja tyyppimuunnokset