Gå til innhold

Bone's Offisielle C++ hjelpetråd


Anbefalte innlegg

Fordi void main() ikke er lov i C++ lenger, iflg. standarden til C++

 

Kodene du har postet hittil er jo en salig blanding av begge, men det spørs vel litt hva Dev-C++ er still inn på.

 

EDIT:

void main er visst ikke tillatt i det hele tatt, hverken i C eller C++ (se post under)

Endret av Nazgul
Lenke til kommentar
Videoannonse
Annonse

det er fordi du forsøker å kompilere programmet som C++:

 

lars@ibmr52:~/programming/c++$ cat a.cpp
void main()
{
}
lars@ibmr52:~/programming/c++$ g++ a.cpp -o a
a.cpp:1: error: ‘::main’ must return ‘int’
lars@ibmr52:~/programming/c++$ gcc a.cpp -o a
a.cpp:1: error: ‘::main’ must return ‘int’
lars@ibmr52:~/programming/c++$ mv a.cpp a.c
lars@ibmr52:~/programming/c++$ gcc a.c -o a
a.c: In function ‘main’:
a.c:2: warning: return type of ‘main’ is not ‘int’
lars@ibmr52:~/programming/c++$./a
lars@ibmr52:~/programming/c++$

 

GCC (og G++) er kompileren MinGW og dermed Dev-C++ bruker. Du greier sikkert å gjette deg til at GCC automatisk switcher til `C++-modus' i visse sammenhenger og tilfeller; selv om den mer eksplisitte "wrapperen" G++ eksisterer.

 

edit:

som du ser gir den kun en warning på slutten, og den har da produsert en eksekverbar fil `a'

Endret av dayslepr
Lenke til kommentar
  • 2 uker senere...

Sry vist dette er svart på, men kunne ikke finne noe da jeg søkte.

 

Sitter med Accelerated C++ og er kommet dit hvor man skal trykke end-of-file etter man er ferdig med å skrive inn alle hjemmelekse karakterene.

 

Slik jeg har forstått det så er end-of-file det samme som Ctrl+z, men når jeg prøver dette så får jeg bare opp ^Z. Og programmet detter ut når jeg trykker Enter.

 

Hvordan får jeg det til å fungere?

Lenke til kommentar
  • 4 uker senere...
  • 4 uker senere...

Jeg har problemer med å kompilere dette programmet(win32 commandline):

VS.NET 2005

 

#include "stdafx.h"
#include "iostream"


int square(int i)
{
return i*i;
}
float square(float f)
{
return f*f;
}
double square (double d)
{
return d*d;
}
int main()
{
int i = 2;
float f = 3.0;
double d = 4.0;
i = square(i);
f = square(f);
   d = square(d);
return 0;
}

 

Jeg får opp en boks som sier at MSVCR80D.dll manger/finner den ikke.

Hva har jeg gjort gale nå da?

Lenke til kommentar

1. Ikke bruk " når include-filene ligger i includepath'en

2. Den kompilerer fint:

zirener@thinkpad ~/programming/tests/test $ g++ -ansi main.cpp -o main
zirener@thinkpad ~/programming/tests/test $ 

3. Du mangler en dll-fil. **

 

Edit: :)

Endret av zirener
Lenke til kommentar

Legg til disse linjene et sted. Jeg er ikke helt sikker på om det har noe med saken hvor du legger linjenen. Det ser ut til å funke uansett. :cool:

 

#pragma comment(lib, "WS2_32.LIB")
#pragma comment(lib, "NETAPI32.LIB ")

eller du kan gå på prosjekt egenskaper->Linker->Input->Additional dependencies.

Lenke til kommentar
  • 1 måned senere...

Tengte jeg skulle kjøpe meg en bok om C++ jeg..

Er helt nybegynner, så trenger en bok som går helt ned på det grunnleggende, helst med tutorials og sånt.

Har dere noen tips?

 

edit: kom over bøkene Programmering i C++ og Programmering i C#.

Er de gode bøker å starte med?

Endret av Hrisebro
Lenke til kommentar
nei, kjøp engelske bøker

 

les i stickytrådene på forumet, og søk i formumet - det er totalt unødvendig å poste flere spm. ang. bøker her

 

C# er forresten et annet språk enn C og C++, og det er et eget forum for C#

6572603[/snapback]

Fant ut det :p

Får lese mer på forumet da..

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å
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...