std string ja Qt

kjbnkj

Teen C ohjelman ydintä Code Blocksilla ja käyttöliittymän Qtn C :lla.
Ydintä teen ihan vain console ohjelmana ja tarkoituksena on pitää ydin ja käyttöliittymä ohjelman kehityksen aikana selvästi erillään.

Joitakin muuttujia, tai enemmänkin vakioita olen määritellyt näin:
#define Accident 4

Debuggauksen vuosi haluan laittaa joitakin muuttujia stringeiksi jotta niiden sisältö näkyisi debuggerissa, muutoinhan tuo näkyy vain nelosena. Toisekseen niitä pitäisi pystyä koodissa vertailemaan yhtä yksinkertaisesti kuin kokonaislukuja.

Minkä kirjaston stringiä kannattaisi käyttää ettei linkitysongelmia tulisi myöhemmin vastaan?

5

447

    Vastaukset 5

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Affiliate-Julkaisia

      #include <iostream>

      using namespace std;

      #define KORVATTAVA "korvaava teksti, joka tulee sanan KORVATTAVA tilalle"
      #define luku 12

      int main()
      {
      int a;
      int b;

      a = 11;
      b = a luku;

      cout << KORVATTAVA << endl;
      cout << int(b) << endl;

      return 0;
      }

      http://paste.ofcode.org/JAgNLQZWd6unbrZveJWZsL


      #define = Makron määrittely, merkkijonot lainausmerkkien sisään, luvut ilman.
      Tuskin ymmärsin oikein.

    • kjbnkj

      definellä on siis esikääntäjä muuttanut selkokielisen tekstin int tyyppiseksi joka sopii hyvin vertailuun == , != jne. enimmäkseen ehtolauseissa, koodissa on saanut käyttää selkokielisiä muuttujia.

      Oikeastaan ois pitänyt kysyä minkä kirjaston string ois helppo käyttöisin ja pelais yhteen CodeBlockin ja Qtn kanssa, ja käytettävien kirjastojen määrä pysyisi minimissä.

      CString, std::string ja mitä niitä onkaan open source puolella?

      • Affiliate-Julkaisia

        En osaa vastata tuohon.


      • 102030405060

        Jossei std:string kelpaa, niin Qt:n QString kyllä on erittäin helppo käyttöinen.


    • viuh-vauh

      Jossei ole mitään erittäin hirveän tärkeän oleellista ja ylitsepääsemätöntä syytä olla käyttämättä QStringiä kaikkialla, niin kannattaa ottaa QString kaikkialla käyttöön jo heti alkuunsa. Qt:llä tehty käyttöliittymä käyttää kuitenkin QStringiä, ja merkkijonojen muuntelu std::stringin ja QStringin välillä on vain turhaa ylimääräistä rumbaa, minkä kyllä huomaa projektin edetessä.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mikä on ollut

      Ihanin kohtaamisemme?
      Ikävä
      39
      665
    2. Mikä on suurin syy

      Ettet halunnut minua?
      Ikävä
      86
      638
    3. Sinä mies olisit

      ollut se kenet haluan. Edelleen pidän sinua kaikkein ihanimpana ja tärkeimpänä. Kukaan muu ei ole niinkuin sinä. Mutta s
      Ikävä
      31
      580
    4. Poliisin potkija

      Kukahan oman elämänsä sankari oli potkaissut poliisia? Iltalehdessä oli juttua.
      Haapavesi
      16
      578
    5. Miksi jätit minut

      Epätietoisuuteen? Tiedän että pelkäsit mitä siitä seuraa jos asiat tulevat mutta silti. Miksen merkinnyt tarpeeksi?
      Ikävä
      37
      523
    6. Tykkäisitköhän todellisuudessa jutella

      Minun kanssa kahdestaan, vai onko tämä palstailu enemmän sinun juttu minun suhteen?
      Ikävä
      49
      511
    7. kehtaisitko esitellä kaivattusi

      läheisillesi? 🤔
      Ikävä
      34
      502
    8. Kun et ota yhteyttä, tarkoittaako se

      Että olet menny elämässä eteenpäin ja et myös toivo minulta naiselta viestiä enää?
      Ikävä
      62
      495
    9. Mitä haluaisit

      Sanoa itsellesi juuri nyt?
      Ikävä
      63
      491
    10. Kaipaatko vielä exää?

      Jos olet ihan rehellinen
      Ikävä
      68
      479
    Aihe