C++ koodiko muka väärin?!?

Viestiketju Vapaata keskustelua -osiossa. Ketjun avasi BlackL7s 31.03.2006.

  1. BlackL7s

    BlackL7s Regular member

    Liittynyt:
    26.08.2005
    Viestejä:
    710
    Kiitokset:
    0
    Pisteet:
    26
    Olen aloittelija ja yritän tehdä tätä ensimmäistä harjoitusta mutta eipä suostu toimimaan.Ohjelmana käytän Dev-C++ jonka totesin helpoksi käyttää.Kun teen tästä tiedostosta exen,niin se valittaa että=
    32:2 C:\Dev-Cpp\include\c++\3.4.2\backward\backward_warning.h #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated. Tommosta =)

    Ja koko pätkähän on:

    #include <iostream.h>

    int main()
    {
    cout << "Hello World!\n"; (2 väliä alkuun ei ottanu tää)
    return 0; (2 väliä alkuun ei ottanu tää)
    }


    Mis vika?
     
    Viimeksi muokattu: 31.03.2006
  2.  
  3. leeti89

    leeti89 Member

    Liittynyt:
    07.01.2006
    Viestejä:
    8
    Kiitokset:
    0
    Pisteet:
    11
    #include <stdio.h>
    int main()
    {
    printf("Hello World!\n");
    return 0;
    }
     
  4. Bluekkis

    Bluekkis Active member

    Liittynyt:
    04.08.2003
    Viestejä:
    2,235
    Kiitokset:
    0
    Pisteet:
    66
    leetin koodinpätkä on kiroitettu c:llä, ei c++:lla joten jätä se huomioimatta.

    ongelma on siinä että includoit iostream.h kirjaston, standardi kirjastojen osalta c++:n oike tapa on #include <iostream>, eli jätä .h pois.

    Näin siis itse kirjoittaisin koodin:

    #include <iostream>

    int main() {

    cout << "HelloWorld!\n";

    return EXIT_SUCCESS;
    }
     
  5. BlackL7s

    BlackL7s Regular member

    Liittynyt:
    26.08.2005
    Viestejä:
    710
    Kiitokset:
    0
    Pisteet:
    26
    Koitin kerran ilman .h:ta mutta ei auttanut.Ehkä jos muutan tollaseksi kun sulla ni voipi toimia,kuhan saan koneen kuntoon ensin.Ongelmana on kirjan muut "näytteet" mitä pitäisi tehdä,koska niissä kaikissa on toi <iostream.h> ja noi merkit eri tavalla.
     
  6. .W.

    .W. Regular member

    Liittynyt:
    01.03.2004
    Viestejä:
    838
    Kiitokset:
    0
    Pisteet:
    26
    Hmm.. How about namespacing..

    Itse kirjoittaisin tämän :

    #include <iostream>

    int main()
    {
    std::cout << "HelloWorld!" << std::endl;
    return EXIT_SUCCESS;
    }

    Tai sitten:

    #include <iostream>

    using namespace std;

    int main()
    {
    cout << "HelloWorld!" << endl;
    return EXIT_SUCCESS;
    }

    edit: lisäystä, seuraavat:

    Kyllä tuo iostream pitäis toimia .h:n kanssa, vielä, se on jäämässä pois. Tuo ilman .h:a on selvennyksen vuoksi että kyseessä on standardikirjasto.

    Haeppa googlella hakusanoilla "hassunhauska c++ opas", eka linkki, veikkaan että voittaa monen tylsän kirjan ajanmukaisuudellaan ja tyylillään..
     
    Viimeksi muokattu: 10.04.2006
  7. Bluekkis

    Bluekkis Active member

    Liittynyt:
    04.08.2003
    Viestejä:
    2,235
    Kiitokset:
    0
    Pisteet:
    66
    Tosiaan itseltäni unohtui tuo namespace.
     
  8. viili_cat

    viili_cat Guest

    Jos ongelma ei ratkennut, tässä voisi olla yksi tapa saada toimimaan ohjelma(t).
    Itse tyhjensin kaiken tekstin/ tiedon tuolta backward_warning.h:sta. Mutta älä missään nimessä poista sitä, sillä itselläni ei toiminut sen jälkeen Dev C++, mutta kopioi varmuudeksi kaikki teksti sieltä backward_warning.h:sta vaikkapa notepadiin ja poista sitten se kaikki teksti/ tieto tieto sieltä ja tallenna se sitten normaalisti sen päälle.
    Elikkäs: include -> c++ -> 3.4.2 -> backward ja sieltä sitten tuo backward_warning.h.
     
    Moderaattorin viimeksi muokkaama: 11.04.2006

Jaa tämä sivu