Rekomendera C++ compiler
Re: Rekomendera C++ compiler
kopierade texten från forumet:
#include <iostream>
using namespace std;
int main(){
cout << "hello" << endl;
return 0;
}
klistrade in i abi word word processor
sparade som hello.C
öppnade terminalen
skrev:
g++ hello.C -o hell
svaret jag får är:
hello.C:23: fel: överblivet "#" i program
hello.C:1: fel: expected unqualified-id before "<" token
hello.C:23: fel: expected constructor, destructor, or type conversion before "&" token
hello.C:23: fel: expected unqualified-id before "<" token
hello.C:24: fel: expected unqualified-id before "<" token
hello.C:28: fel: expected unqualified-id before "<" token
#include <iostream>
using namespace std;
int main(){
cout << "hello" << endl;
return 0;
}
klistrade in i abi word word processor
sparade som hello.C
öppnade terminalen
skrev:
g++ hello.C -o hell
svaret jag får är:
hello.C:23: fel: överblivet "#" i program
hello.C:1: fel: expected unqualified-id before "<" token
hello.C:23: fel: expected constructor, destructor, or type conversion before "&" token
hello.C:23: fel: expected unqualified-id before "<" token
hello.C:24: fel: expected unqualified-id before "<" token
hello.C:28: fel: expected unqualified-id before "<" token
- Konservburk
- Inlägg: 5919
- Blev medlem: 07 apr 2007, 22:28
Re: Rekomendera C++ compiler
Du har nog drabbats av den mystiska kopieringsbuggen. Jag har inte kommit fram till varför vissa råkar ut för den, men inte andra. Hur som helst så händer det ibland att det som kopieras från forumet får 4 mellanrum i början av varje rad. Blev det så för dig så kommer inte koden att fungera. Du måste plocka bort mellanrummen först.
Re: Rekomendera C++ compiler
Men mellanrum skall väl inte spela någon roll?
Och varför inte använda gedit istället? Då får du syntax-färgning av texten.
I alla fall om du byter namn till litet "c", dvs helloworld.c
vet inte men använder du g++ kanske man skall kalla filen för *.cpp.
och använda gcc för vanlig "C"-programmering, ("fil.c")
Och varför inte använda gedit istället? Då får du syntax-färgning av texten.
I alla fall om du byter namn till litet "c", dvs helloworld.c
vet inte men använder du g++ kanske man skall kalla filen för *.cpp.
och använda gcc för vanlig "C"-programmering, ("fil.c")
- Konservburk
- Inlägg: 5919
- Blev medlem: 07 apr 2007, 22:28
Re: Rekomendera C++ compiler
Det kan man tycka. Det enda jag vet är att folk då och då inte får kod som de kopierat från forumet att fungera. När vi kommer fram till vad felet är brukar de beskriva det som att det finns konstiga mellanrum i början av varje rad. Jag har aldrig sett det själv och har ingen aning om ifall det är vanliga mellanrum eller något annat som bara ser ut som mellanrum.cthulhu skrev:Men mellanrum skall väl inte spela någon roll?
Re: Rekomendera C++ compiler
nu har jag testat att skriva koden själv, använda .cpp
skriva g++ helloworld -o hell.exe
sedan ./hell.exe
får samma svar som tidigare.
börjar undra om -0 är ett o som i "class olson"
skriva g++ helloworld -o hell.exe
sedan ./hell.exe
får samma svar som tidigare.
börjar undra om -0 är ett o som i "class olson"
Re: Rekomendera C++ compiler
-o är bokstaven o och inte siffran noll. Så det beror på något annat.
Rad 23 finns väl inte? Så hur kan det finnas fel där? Nåt inkluderat som strular? Du har kanske inte libc6 installerat?
EDIT: Hallå du menar väl inte att du använde -0 (noll) vid kompileringen? Isf har felet där
Rad 23 finns väl inte? Så hur kan det finnas fel där? Nåt inkluderat som strular? Du har kanske inte libc6 installerat?
EDIT: Hallå du menar väl inte att du använde -0 (noll) vid kompileringen? Isf har felet där
Re: Rekomendera C++ compiler
använde inte nolla,
gjorde samma procedur med gedit,
istället för abiword,
och det funkar utmärkt.
tänkte bara fråga om någon vet hur man i c++
skapar en fil som jag kan köra,
utan att gå in på terminal och skriva filens namn.
en fil som man klickar och programet körs
gjorde samma procedur med gedit,
istället för abiword,
och det funkar utmärkt.
tänkte bara fråga om någon vet hur man i c++
skapar en fil som jag kan köra,
utan att gå in på terminal och skriva filens namn.
en fil som man klickar och programet körs
Re: Rekomendera C++ compiler
tja, det där är nog inte en "c++" fråga.
Gör du den körbar med chmod, och inte läs/skrivbar, så har väl inte nautilus något annat val än att köra den när du klickar på den binära filen. eller?
lägg den i /usr/bin eller /usr/local/bin för att få den "tillgänglig" från alla kataloger utan att behöva köra "./fil"
Gör du den körbar med chmod, och inte läs/skrivbar, så har väl inte nautilus något annat val än att köra den när du klickar på den binära filen. eller?
Kod: Markera allt
chmod a=x hell.exe
Re: Rekomendera C++ compiler
Kommer inte fungera eftersom det är ett kommandoradsprogram, så det måste alltså köras från kommandoraden. Alternativt kanske du kan starta det mha Alt+F2 och skriva
Sitter i XP nu så kan inte testa själv
Kod: Markera allt
gnome-terminal sokvag/program
- mcNisse
- Inlägg: 5211
- Blev medlem: 06 feb 2007, 20:51
- OS: Debian
- Utgåva: Vet inte/ingen utgåva passar
Re: Rekomendera C++ compiler
Låt bli att skräpa ner i std namnrymden.
Här är vad man kan skriva istället.
Edit: Jag har fel. Det är inte std som skräpas ner. Utan default namnrymden. (Den utan namnespace)
Här är vad man kan skriva istället.
Kod: Markera allt
using std::cout;
using std::endl;
Senast redigerad av 1 mcNisse, redigerad totalt 23 gånger.
Re: Rekomendera C++ compiler
Utanför ämnet: Flyttar denna tråd till en mer lämplig tavla.
Mvh
Martin

Mvh
Martin
Re: Rekomendera C++ compiler
Varför inte använda using namespace std?mcNisse skrev:Låt bli att skräpa ner i std namnrymden.
...
- mcNisse
- Inlägg: 5211
- Blev medlem: 06 feb 2007, 20:51
- OS: Debian
- Utgåva: Vet inte/ingen utgåva passar
Re: Rekomendera C++ compiler
Därför att du tar in mer symboler än vad du behöver.
Ta detta exempel:
Det är ju ett ganska enkelt exempel. Poängen är egentligen att du inte vill skräpa ner ditt namespace med allt från std (inte som jag skrev i förra posten skräpa ner std). Det är ganska enkelt att deklarera en variabel/class som kolliderar med något i namnrymden som du importerar. Dessutom tycker jag att koden blir svårare att läsa när man importerar. Det är mycket tydligare när man ser varifrån symborerna tas.
I värsta fall om du importerar två namnrymder så kan symboler kollidera.
Ta detta exempel:
Kod: Markera allt
using <sstream>
using namespace std;
// someoneElses.cpp/h
#include "myHeader.h"
class stringstream { // uh oh
};
I värsta fall om du importerar två namnrymder så kan symboler kollidera.
- Substrata
- Inlägg: 71
- Blev medlem: 13 apr 2010, 11:01
- OS: Arch Linux
- Utgåva: Vet inte/ingen utgåva passar
Re: Rekomendera C++ compiler
Det viktigaste är att inte exportera dessa symboler (genom headerfiler). Använder du 'include std' i en cpp-fil så är det dock ett lokalt direktiv.