DevN Skrevet 18. september 2003 Del Skrevet 18. september 2003 Har tatt for meg litt programmering i C++ nå. Har lest ca. 15 sider med grunnleggende informasjon om språket, og nå blir det nevnt et program som heter Borland C++ v.4.5. Har søkt litt på google.com, men kom fram alt for mange resultater... Så trenger en link til programmet, evt. nyere hvis det ikke er noe stort annerledes oppsett på dette...? Var også nevnt noe om at v4.0 var er DOS-basert versjon eller noe sånt. Kan man kjøre de nyere inne på selve OS'et? (I mitt tilfelle, Windows XP Professional.) Før jeg går noe videre tror jeg at det er viktig å ha programmet klart, siden de neste delene av boken er eksempler og koder man kan prøve. // zalo Lenke til kommentar
edwood Skrevet 18. september 2003 Del Skrevet 18. september 2003 Dev-cpp er et greit ide å programmere i på windows maskiner. Lenke til kommentar
DevN Skrevet 18. september 2003 Forfatter Del Skrevet 18. september 2003 Kan teste det... Får håpe det er i likhet med programmet som nevnt i boken. Lenke til kommentar
Dino_ Skrevet 19. september 2003 Del Skrevet 19. september 2003 Dev-cpp er et greit ide å programmere i på windows maskiner. Japz, stemmer Dev-Cpp er et finfint IDE, brukte det mens jeg pløyde igjennom boken "Grunnleggende Programmering i C++" av Leirvik/Ljosand. Det gikk greit, selv om boken er skrevet med M$ Visual Cpp i bakhodet. måtte bare tenke selv, bitte litt :o , gikk nesten helt fint det også! Lenke til kommentar
DevN Skrevet 20. september 2003 Forfatter Del Skrevet 20. september 2003 Programmet virker ok, boken jeg har er litt eldre... Ser ikke ut til at noen av eksemplene her i boken virker... F.eks. #include <iostream.h> void main() { int Tall; Tall = 66; cout << "nVariabelens verdi er: " << Tall; } Og denne, enda enklere: #include <iostream.h> void main() { cout << "nBlaBlaBla"; cout << "nBlaBlaBla"; cout << "nBlaBlaBla"; } Er det noen forandringer i språket/programmet jeg bør være obs på? - Som sagt er boken litt gammel... Veldig gammel... (Lånte på biblioteket i første omgang.) Btw, skal det være noe mellomrom mellom "main" og "()", eller mellom parentesene evt.? (Kan ikke kompilere fordi koden har noen error'er står det..) Lenke til kommentar
RolloThomasi Skrevet 20. september 2003 Del Skrevet 20. september 2003 Heter det ikke int main() da? og int main(void) i C99. Er det c++ eller c du programmer? husk at c++ kilde skal ha endelsen .cpp, mens c skal ha endelsen .c for at kompileren skal kunne skille de fra hverandre. Lenke til kommentar
DevN Skrevet 20. september 2003 Forfatter Del Skrevet 20. september 2003 I følge boken er det C++ og Objektorientert programmering. Og akkurat dette eksemplet var gjort som "Console Application", for C++ tror jeg. Lenke til kommentar
Dino_ Skrevet 20. september 2003 Del Skrevet 20. september 2003 Virker som bare p*kker her hos meg da.... DevC++ Version 4 ( C++ mode ) , under M$Win 98.... Lenke til kommentar
DevN Skrevet 20. september 2003 Forfatter Del Skrevet 20. september 2003 I dette programmet, som anbefalt lengre opp, merkes en og en error, den begynner på følgende tegn "{". Løsninger? Lenke til kommentar
Shulgin Skrevet 21. september 2003 Del Skrevet 21. september 2003 zalo: Jeg er usikker. Eksemplene du ga oss er riktige og funger problemfritt. Dev-C++ er i tillegg visstnok en veldig god kompilator; i hvert fall blant de som er gratis. Jeg tror ikke noen av kompilatorene til Borland er gratis, så jeg anbefaler deg å bruke Dev-C++, hvis du bare for saker og ting til å virke. Som sagt vet jeg ikke hva som er galt, men du kan i hvert fall begynne med å erstatte: #include <iostream.h> med #include <iostream> using namespace std; Er ikke akkurat noen tipp-topp C++ programmerer selv, så jeg tør ikke gi ut noen forklaring, men bare gjør det. #include <iostream.h> er visstnok historie. Og det er derfor forståelig at iostream.h er brukt i boka di, ettersom den er gammel. Men hvilke problemer oppstår? Står det ikke hva som er galt? Heter det ikke int main() da? og int main(void) i C99. Hvordan forklarer jeg dette? "Void" er i hvert fall den verdien funksjonen main() skal returnere, men void tar ingen verdier, sånn som int og float, for eksempel. Skulle han brukt "int", måtte han ha gjort det slik: #include <iostream> using namespace std; int main() { int Tall; Tall = 66; cout << "nVariabelens verdi er: " << Tall; return 0; } Her returnerer main() verdien 0, og du vil ikke merke noe forskjell i dette programmet. Så void er fint. Lenke til kommentar
A_N_K Skrevet 21. september 2003 Del Skrevet 21. september 2003 Standardsignaturen for main er int main(), med void skal du ikke kunne returnere noe som helst (altså udefinert returverdi). Kompilatoren kan implisitt sette 0 som returverdi, men spytter gjerne ut en advarsel på kjøpet. Lenke til kommentar
Shulgin Skrevet 21. september 2003 Del Skrevet 21. september 2003 Standardsignaturen for main er int main(), med void skal du ikke kunne returnere noe som helst (altså udefinert returverdi). Kompilatoren kan implisitt sette 0 som returverdi, men spytter gjerne ut en advarsel på kjøpet. Riktig. Tør jeg spørre om du vet svaret på zalos spørmsål, ettersom du ikke akkurat høres uvitende ut? Lenke til kommentar
A_N_K Skrevet 21. september 2003 Del Skrevet 21. september 2003 Nja, jeg vet ikke. Kan virke som kompilatoren reagerer på void main? I så fall er det sannsynligvis en advarsel, og ikke en error. Og moralen er: Kjøp en noenlunde a jour bok. Lenke til kommentar
Dino_ Skrevet 21. september 2003 Del Skrevet 21. september 2003 http://www.simtel.net/product.download.mir...rs.php?id=17456 her kan du laste ned Dev-C++ 4.x dersom du bruker versjon 5.x, 4.x er mere stabil enn versjon 5.x, da 5.x er stadig under utbedring. (beta) Dev-C++ er forresten IKKE en kompilator, men derimot et IDE (Integrated Development Enviroment) som kan nyttegjøre seg av forskjellige C++ -kompilatorer, jeg bruker den som kalles "Mingw-konverteringen av GCC (Gnu Compiler Collection)" under Win 98, og har ingen problemer med å kompilere hverken: #include <iostream.h> void main() { int Tall; Tall = 66; cout << "nVariabelens verdi er: " << Tall; } eller: #include <iostream.h> void main() { cout << "nBlaBlaBla"; cout << "nBlaBlaBla"; cout << "nBlaBlaBla"; } Jeg mistenker feilen for å ligge annensteds enn i koden... Lenke til kommentar
A_N_K Skrevet 21. september 2003 Del Skrevet 21. september 2003 Min versjon av GCC spytter ut en advarsel relatert til void main-signaturen, kompilerer ja, men likevel. Lenke til kommentar
RolloThomasi Skrevet 21. september 2003 Del Skrevet 21. september 2003 Heter det ikke int main() da? og int main(void) i C99. Hvordan forklarer jeg dette? "Void" er i hvert fall den verdien funksjonen main() skal returnere, men void tar ingen verdier, sånn som int og float, for eksempel. Skulle han brukt "int", måtte han ha gjort det slik: Har bare erfaring i vanlig C, mere spesifikt C99, og der må man da i hvert fall bruke int main(void) som deklarasjon for main-funksjonen. Uansett er det jo bare syntaks, void er vel "the big nothing" - et ord som beskriver intet. enten vil det fungere med ordet, eller uten, alt ettersom hvilken versjon man kompilerer på. C++ har visst her en fin snarvei som sløyfer behovet for return-linja med mindre man trenger en return verdi. Men kanskje likeså greit å gjøre det på gamle måten ettersom man kommer til å trenge funksjoner med return-verdier "further down the line", og da finnes det jo ihvertfall kosmetiske grunner for at main-funksjonen skal ha samme oppbygning, og kanskje til og med vil det gjøre det enklere i starten å ha det innlært. edit: on topic: Hvis du kunne copy-paste feilmeldingene du får hadde det jo det vært en hjelp. Videre anbefaler jeg Dev-CPP 4.0 på det varmeste. Mindre "bjeller og fløyter" enn 5'ern. Er lite behov for et så avansert IDE før du en gang i fremtiden kaster deg over ett eller annet stort prosjekt. Enda videre vil jeg osgå anbefale deg en nyere bok. Og ta en liten titt på å bytte ut iostream.h med stdio.h og dermed cout/cin med printf/scanf. Litt vanskeligere å bruke i starten, men mulighetene er mye større. Jeg tok overgangen tidlig, og det gikk helt fint. Lykke til Lenke til kommentar
kjetil7 Skrevet 22. september 2003 Del Skrevet 22. september 2003 Ifølge C++ standarden *skal* main returnere en int. Men du trenger ikke returnere noe verdi... int main() { return 0; } //dette er også ok int main() { } Det står også at alle kompilatorer skal akseptere følgende main definisjoner: int main(); int main(int argc, char *argv[]); Men standarden er også åpen for andre parametre, men disse blir da implementasjonsavhengige og kan ikke garanteres å være portable. Lenke til kommentar
Shulgin Skrevet 22. september 2003 Del Skrevet 22. september 2003 Jeg snakket litt med selveste zalo over MSN. Se her: void main() {} // funker ikke int main() {return 0;} // funker ikke int main() {} // funker Og slik tror jeg det hadde seg, merkelig nok, i Dev-C++, mens alle fungerer i VC++. Han var visst ikke helt kjent med Dev-C++, så noen feilmelding kunne han ikke gi meg, men den merket visst den første "bracketen": '{'. Ikke vet jeg. Lenke til kommentar
kjetil7 Skrevet 22. september 2003 Del Skrevet 22. september 2003 Jeg snakket litt med selveste zalo over MSN. Se her: void main() {} // funker ikke int main() {return 0;} // funker ikke int main() {} // funker Og slik tror jeg det hadde seg, merkelig nok, i Dev-C++, mens alle fungerer i VC++. Han var visst ikke helt kjent med Dev-C++, så noen feilmelding kunne han ikke gi meg, men den merket visst den første "bracketen": '{'. Ikke vet jeg. Den andre skal selvfølgelig fungere. Det er bare den første som ikke fungerer. Hvis den andre ikke fungerer har du gjort noe feil. Nummer to og tre er faktisk helt like i og med at hvis du ikke returnerer en verdi fra main, vil den automatisk returnere 0. Merk at noen gamle kompilatorer krever at du returnerer en verdi fra int main() (f.eks. VC++ 6.x). Lenke til kommentar
Shulgin Skrevet 23. september 2003 Del Skrevet 23. september 2003 Ok. Det var da ikke helt jeg som hadde problemet, men, hvis du leser tråden. Synes bare det var rart at karen ikke fikk ekempel nummer to til å fungere, og det er det jo. Men bare la oss regne med at jeg gjorde noe feil da jeg ba ham prøve de forskjellige tingene. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå