Gå til innhold

Hva trenger jeg for å kunne bruke C eller C++?


Anbefalte innlegg

Hehe.

Reversing har gitt linux mye nyttig, som NTFS read/write og SMB clients, så reversing er ikke dumt men sjeldent praktisk å bruke =)

 

Og angående det, hvis han skriver C/C++ under linux kan han fint lage .exe som vil kjøre på windows.

Det må bare kompileres på nytt, det er også en sjangse for at det finnes *nix win32 compilere.

 

Personlig ville jeg ha gått for Java i dag, det er leet.

Hardware i dag er så kraftig at BF2 like godt kunne vært skrevet i Java. :wee:

 

Når det kommer til windows, så er vel veien lagt for deg.

Les det, gjør det og du er "der".

 

Men nå skal jeg faktisk presse på folk linux, fremfor å presse på de reversing.

:D

Lenke til kommentar
Videoannonse
Annonse
Personlig ville jeg ha gått for Java i dag, det er leet.

Hardware i dag er så kraftig at BF2 like godt kunne vært skrevet i Java. :wee:

7830819[/snapback]

Har prøvd litt Java, og har den fantastiske print Hello World koden, og jeg lagret den som .java fil (riktig?), men hva er koden for å vise Java filen da?

 

*prøv å ikke gå mer off topic for jeg vil ha C++ og/eller Java*

Lenke til kommentar
Reversing har gitt linux mye nyttig, som NTFS read/write og SMB clients, så reversing er ikke dumt men sjeldent praktisk å bruke =)

...

 

Joda, har aldri sagt det er dumt, men det er en fryktelig omvei hvis alt du vil er å lære å skrive enkle programmer :)

 

...

Og angående det, hvis han skriver C/C++ under linux kan han fint lage .exe som vil kjøre på windows.

Det må bare kompileres på nytt, det er også en sjangse for at det finnes *nix win32 compilere.

...

 

Om det er hensiktsmessig kommer an på om han bruker windows/*nix spesifikke bibloteker.

 

...

Hardware i dag er så kraftig at BF2 like godt kunne vært skrevet i Java. :wee:

...

 

Eeeh, nei.

Dvs; Noens hardware er jo det, men det er ikke alle som sitter på 4veis SLI og C2Quad.

 

Et annet aspekt er jo det at java som regel kompileres til mellomkode og ikke native. Det er klart at det fins kompilere som kan kompilere det til native, med om det virker smertefritt er en annen sak.

 

...

Men nå skal jeg faktisk presse på folk linux, fremfor å presse på de reversing.

...

 

Det er meget bedre :)

Men man skyter ikke fluer med kanoner, bare husk det.

Ola Nordmann som bare vil installere Photoshop på pcen er antagelig ikke interessert i å heller installere *nix og lære seg The GIMP.

 

 

Bare så det er sagt Chills, du er en av de brukerene jeg liker best på dette forumet (sammen med omtrent 5-6 andre), men noen ganger føler jeg for å sette meg litt tvert, for du er jo ikke kjent for å gå enkleste veien. Stakkars gutt om han hadde endt med å lese "Art of Assembly" for å lage et enkelt program :tease:

 

Og vi er vel på diskusjon.no for å diskutere?

 

 

For å si det sånn; reversering er noe man lærer seg hvis man trenger det -- ikke noe man bare lærer for å kunne det, for å eventuelt få bruk for det senere. Er så sjeldent man trenger det.

7830939[/snapback]

 

Du er helten min :D

 

Driver du noe med cracking BTW?

Lenke til kommentar
...

Hardware i dag er så kraftig at BF2 like godt kunne vært skrevet i Java. :wee:

...

 

Eeeh, nei.

Dvs; Noens hardware er jo det, men det er ikke alle som sitter på 4veis SLI og C2Quad.

 

Et annet aspekt er jo det at java som regel kompileres til mellomkode og ikke native. Det er klart at det fins kompilere som kan kompilere det til native, med om det virker smertefritt er en annen sak.

7831728[/snapback]

 

Enig i at BF2 aldri kunne blitt kjørt i java (er ikke sikker på om det hadde holdt med C2Quad :))

 

Java blir riktignok kompilert til bytekode, og kan sikker kompileres til native kode (som jeg har ingen erfaring med), men det er flere år siden java har blitt kjørt som native kode av java implimenteringen til f. eks. windows og de fungerer fin fint.

 

I dag er det liten vits å lage programmer (for pc eller lignende) i c/c++, andre språk er som regel raskere å skrive og har bedre oppbygning, men skal du ha raske effektive programmer er det C eller c++ som er veien å gå.

 

lykke til hva du velger :)

Lenke til kommentar

C++ er ett morsomt språk å kunne, og langt fra så tungvindt som mange vil ha det til at det er.

 

Du kan finne en veldig god bok om C++ her, last ned både Volume 1 og 2.

 

Dev-C++ bruker MinGW, som er en windows-port av GCC (GNU Compiler Collection), som er en meget god samling av verktøy for utvikling i flere språk.

 

Du kan også bruke Cygwin, som er ett mer "komplett" system enn MinGW.

 

Du kan lese mer om GCC her,

MinGW her, og Cygwin her.

 

Lykke til. :)

Lenke til kommentar
C++ er ett morsomt språk å kunne, og langt fra så tungvindt som mange vil ha det til at det er.

 

Du kan finne en veldig god bok om C++ her, last ned både Volume 1 og 2.

 

Dev-C++ bruker MinGW, som er en windows-port av GCC (GNU Compiler Collection), som er en meget god samling av verktøy for utvikling i flere språk.

 

Du kan også bruke Cygwin, som er ett mer "komplett" system enn MinGW.

 

Du kan lese mer om GCC her,

MinGW her, og Cygwin her.

 

Lykke til. :)

7875288[/snapback]

Takk :)

Endelig et "ordentlig" svar for mitt emne, hehe.

 

Skal få sett på det, men lasta ned volume 1, men det var så mange filer der så jeg får vente litt til jeg har bedre tid :)

Lenke til kommentar

Nå lasta jeg ned det Dev-C++ på nytt på den andre pc'en min og nå får jeg kompilert den. Hva skal jeg gjøre etter at jeg har det? (Har lagra den så det ligger to filer på skrivebordet mitt nå).

 

Når jeg trykker på den øverste, åpner den seg i Dev-C++ programmet, og når jeg trykker på den andre, kommer det en svart boks opp (rekker så vidt å se den) så forsvinner den igjen.

 

Koden jeg prøvde:

#include <iostream>

int main()
{
   std::cout << "Hello, world!\n";
}

 

 

Screenshot av de to filene:

post-111209-1170865984_thumb.jpg

Lenke til kommentar

Sjekk FAQen. Dette er definitivt et frequently asked question. Forøvrig så er dette et C++-forum, og spørsmål vedvarende Dev-C++, VC++, MinGW Developer Studio eller hva det måtte være, hører vel egentlig ikke hjemme her. Hvis du har problemer med et av utviklingsverktøyene du bruker, sjekker du dokumentasjonen til programmet, evt. kan du spørre i et forum som omhandler nettopp det verktøyet du bruker. Da vil du nok også få bedre svar på spørsmålene dine. :)

Lenke til kommentar

Ok, takk.

Men er litt usikker på hva som menes her, så jeg bare spør her.

 

 

2. When executing my dos program, it closes automatically. How I can change this ?

You can use an input function at the end of you source, like the following example :

#include <stdlib.h>
int main()
{
system(“PAUSE”);
return 0;
}

Det betyr at jeg skal bruke den koden for at det svarte vinduet ikke skal lukke seg? For jeg prøvde den i hvertfall, fikk for det første en error og for det andre så lukke vinduet seg.

Lenke til kommentar
Ok, takk.

Men er litt usikker på hva som menes her, så jeg bare spør her.

 

 

int main2()
{
 printf ("Press ENTER to continue.\n");
 getchar (); // wait for input
 return 0;
}

Det betyr at jeg skal bruke den koden for at det svarte vinduet ikke skal lukke seg? Vinduet lukket seg nå óg.

7892336[/snapback]

Edit: Wtf? Jeg trykka visst på svar i stedet for rediger haha

Endret av Andy-Pandy
Lenke til kommentar
Takk :)

Endelig et "ordentlig" svar for mitt emne, hehe.

 

Skal få sett på det, men lasta ned volume 1, men det var så mange filer der så jeg får vente litt til jeg har bedre tid :)

7876356[/snapback]

 

Volume 1 består av mange HTML-sider, du kan bare åpne en tilfeldig en, og gå til indeksen, Volume 2 er en PDF-fil.

 

Når det gjelder problemet med at programmet lukker seg, så er det en grei hack å legge til noe input for å stoppe programmet. cin.get() er ett godt alternativ.

Lenke til kommentar

Okay.

 

Det med at den lukket seg, kan være fordi jeg bruke en slik <#include> ting midt i (kopierte 2 eksempler), og når jeg lasta ned ferdige spill (hadde lyst å se hvor mye koding det er bak et simpelt spill: MYE), at alle <#include> kodene var først, og så det andre.

 

Men er det ikke C++ de bruker når man lager et fullskjermspill, med ordentlig bilder og sånn? Slik som...CS, BF? Hvis ikke, hvordan gjør de det?

Har lyst å prøve. Vet det blir mye å lese/lære men det skal gjøres for å lage et spill :)

Lenke til kommentar

Joda, C++ er populert for spillutvikling.

 

Tar ikke mange ukene å lære seg det man trenger for å gjøre enkle ting med OpenGL og SDL, men man må nesten regne med ett par-ti år før man har Doom 3-killeren. :p

 

Man kan nok lage ett enkelt spill på ett par tusen linjer med kode, det jeg knoter med nå er på rundt 10 000 linjer kode, og det er bare en kube som spinner. ;)

 

Det at programmet lukker seg med en gang er helt normalt. Hvis jeg skal prøve å forklare programflyten kan det sies noe slikt:

 

#include <iostream> //Bruk funksjoner fra iostream

int main() //Her starter hoveddelen av programmet
{     //Alt fra dette punktet og frem til "}" er en del av main()
  std::cout << "Hello, world!" << endl;; //Send "Hello world!" til cout, som er en del av std-gruppen og avslutt med en ny-linje
 return 1; //Her avslutter hoveddelen av programmet, og vi hopper ned ett nivå
 //Siden vi er på laveste nivå i programmet, har ikke programmet noe mer å gjøre, og avslutter
}

 

Er kanskje litt knotete forklart, hvis vi sier det i klartekst, kan det sies slik:

 

Start programmet
Gå inn i hoveddelen av programmet (skjer automatisk)
Skriv ut "Hello World!" og en ny linje til STDOUT (som er terminalen der programmet kjøres fra vanligvis)
Gå ut av hoveddelen av programmet
Avslutt programmet

 

Er kanskje litt klarere sånn, grunnen til at vinduet forsvinner så fort, er at programmet ikke stopper opp noe sted, programmet gjør det det har fått beskjed om, ikke mer, ikke mindre.

 

En litt mindre "hackete" måte å få programmet til å holde seg oppe, er ved å bruke denne koden:

 

#include <iostream> //Bruk funskjoner fra iostream

#include <string> //Sørg for støtte for stringer

int main()  //Hoveddelen av programmet

{

 std::string brukerInput; //String som inneholder det brukeren skriver inn senere, den er tom foreløpig

 std::string halloVerden; //Enda en tom string

 halloVerden = "Heisann "; //Her setter vi halloVerden-stringen til "Heisann ", dette skal vi bruke senere, legg merke til mellomrommet

 std::cout << "Skriv ett navn, eller 'quit' for å avslutte" << std::endl; //Her gir vi instruksjoner til brukeren ved å skrive ut noe til STDOUT

 while(brukerInput != "quit") //Her bruker vi en loop til å holde programmet i gang, så lenge brukeren ikke har skrevet inn "quit", så kjører loopen om og om igjen

 { //Starten på det som kjøres i loopen

    std::cin >> brukerInput; //Her setter vi brukerInput til noe som brukeren skriver inn 

    std::cout << halloVerden + brukerInput << std::endl; //Her skriver vi ut halloVerden (som er "Heisann ") og det brukeren har skrevet inn

 } //Slutten på det som kjører i loopen


 return 1; //Og vi avslutter programmet

}

 

Lykke til. :)

 

EDIT: Ble veldig rotete

Endret av Rulzern
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...