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ä Yllätti

      Kaivatussasi?
      Ikävä
      197
      1879
    2. Ei enää ulkoteltta ruokaa.

      Se oli sitten viimmeinen kerta kun tuonne teltalle menen.Laatu heikkenee joka vuosi ja annokset pienenee.Ei enää kiitos,
      Kuhmo
      48
      1066
    3. Se katse...

      Täynnä rakkautta. Kunpa olisin tajunnut.
      Ikävä
      81
      946
    4. En ole hetkeen sinulle kirjoittanut nainen

      Vieläkin ajattelen sinua, jos voit uskoa. Tunteet minussa huutavat toivoa ja rakkautta, kun kylmä loogisuus taas pistää
      Ikävä
      56
      831
    5. Jos sussa toisessa on yhtään miestä

      Ja kadut tekemisiäsi niin menet poliisin puheille, paljastat kaiken oman osuutesi ja kerrot mitä kaikkea se toinen on te
      Ikävä
      111
      828
    6. 68
      752
    7. Mitä eroavaisuuksia sinulla on

      kaivattusi kanssa? Esim. luonteessa. Haittaavatko erot vai ovatko vain rikkaus?
      Ikävä
      73
      677
    8. Muuttaisitko kaivattusi luokse

      heti asumaan? 🛒
      Ikävä
      93
      672
    9. Onnettomuus

      Olivatko paikkakuntalaisia, jotka menehtyivät?
      Virrat
      23
      607
    10. Olet niin tärkeä

      Et edes tiedä sitä, tai ehkä tunnet sen… Sinussa on jotakin pysyvää, tuttua, turvallista, kodikasta.
      Ikävä
      19
      591
    Aihe