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. Naiset ymmärtävät ettei talous lähde nousuun

      Miten paljon järjellisempi olento nainen onkaan kuin tilastollisestikin paremmin tienaava mies. Kun kaikkialla puskuroid
      Maailman menoa
      172
      1145
    2. En jaksa

      Enää pelleillä ja paljastan J naisen nimen. Se on Jonna ja hän ei koskaan, edes luultavasti ollut täällä. Silti piene
      Ikävä
      45
      773
    3. Minkälainen nainen

      Minkälainen kaipaamasi nainen on luonteeltaan? Kaikki hassun hauskat antava ja helppo on sallittuja, jos poikien on kovi
      Ikävä
      27
      743
    4. Kissa eli kivuissa useita viikkoja

      Ei vienyt lääkäriin vaikka kissa parka maukui ja moni seuraajakin (minäkin) näin että kissa on sairas.
      Tuusniemi
      137
      738
    5. Herkkyydestä

      Toisessa ketjussa toivottiin keskustelua herkkyydestä. Aloitan omalla näkemykselläni. Mielestäni herkät ihmiset ovat l
      Sinkut
      231
      705
    6. Yksi asia sen esti

      Etten antanut meille mahdollisuutta
      Ikävä
      44
      689
    7. Okei, eli olet rakastunut

      Hyvä sinä, niin minäkin.
      Ikävä
      67
      645
    8. Martinan mauton tyyli

      Voi hyvää päivää 🤣 nyt ollaan oltu Muhiksen kanssa Kultareservin avajaisissa suorat housut jalassa ja 500€ korsetti pää
      Kotimaiset julkkisjuorut
      164
      622
    9. Jos meillä olisi yhteinen koti

      Niin haittaisiko sinua pitää se vähä tavaraisena? Ajattelin tänään että jos joskus asuttaisiin yhdessä ja haluaisit pal
      Ikävä
      56
      610
    10. Arvaako kukaan?

      "Humalojalla metalliromun keräyspaikalla on kulkenut pitkin kevättä ja kesää joku henkilö, joka on vienyt sieltä kymmeni
      Haapavesi
      36
      600
    Aihe