WinFuture-Forum.de: C++ Unter Win Und Linux -> Differenzen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

C++ Unter Win Und Linux -> Differenzen


#1 Mitglied ist offline   ShadowHunter 

  • Gruppe: aktive Mitglieder
  • Beiträge: 4.199
  • Beigetreten: 31. August 04
  • Reputation: 1

geschrieben 14. September 2006 - 22:25

Ich möchte mich aufs Studium vorbereiten und habe ein paar Bücher für C++ die angeblich OS unabhängig sind. Grund: Ich möchte weiter bequem unter Linux arbeiten und nicht unbedingt VC oder ähnliches nutzen um Windows starten zu müssen bzw. zu emulieren/VMware.
Nun ist mir aufgefallen, dass der Quellcode unter Linux meist etwas angepasst werden muss.
Einfaches Beispiel Hello World.

Windowsversion:
#include <iostream.h>
int main()
{
cout << "Hello World!\n";
return 0;
}


Linuxversion:
#include <iostream>
#include <cstdlib>

int main()
{
using std::cout;
cout << "Hello World!\n";
return 0;
}


Jetzt wollte ich wissen ob das mit "std" der einzige Unterschied ist oder worauf ich alles achten muss, wie ich das umgehen kann etc.! Möchte einfach im Studium nicht jedes mal rumsuhcen müssen was ich anpassen muss für Linux, wobei gcc ja sich an die Standards hält und MS eben nicht. Hoffe als an der Uni wirds richtig gelehrt, nur wenn die Bücher schon nicht ganz passen naja...


PS: ob cout Sinn macht oder beliebt ist, sei dahingestellt ging mir nur um ein Beispiel ;)

Dieser Beitrag wurde von ShadowHunter bearbeitet: 14. September 2006 - 22:26

"Wir können Regierungen nicht trauen, wir müssen sie kontrollieren"
(Marco Gercke)
0

Anzeige



#2 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 15. September 2006 - 02:48

Windows- und Linux-Version:

#include <iostream>
using namespace std;
int main()
{
cout << "Hello World!\n";
return 0;
}


Std-Namespace sollte aber sowieso stets genommen werden, CStdLib zu includen ist überflüssig, und unter aktuellen VisualStudio-Versionen heißt es schon seit langem iostream, der .h ist nur noch zwecks Abwärtskompatibilität vorhanden und includet die richtige iostream.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#3 Mitglied ist offline   ShadowHunter 

  • Gruppe: aktive Mitglieder
  • Beiträge: 4.199
  • Beigetreten: 31. August 04
  • Reputation: 1

geschrieben 15. September 2006 - 03:36

Naja mir wurde gesagt es hat seine Vorteile wenn man nur using std::count nimmt da man sich so unter Umständen Probleme ersparen kann.

Ist das der einzige "große" Unterschied oder wird da noch einiges mehr mal in Büchern stehen, wo ich dann selber noch das ganze anpassen muss?
"Wir können Regierungen nicht trauen, wir müssen sie kontrollieren"
(Marco Gercke)
0

#4 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 15. September 2006 - 07:41

Das einzige Problem, wenn man es überhaupt als Problem bezeichnen kann, ist wenn du zwei Namespaces importierst und beide besitzen die Klasse cout.
0

#5 Mitglied ist offline   ShadowHunter 

  • Gruppe: aktive Mitglieder
  • Beiträge: 4.199
  • Beigetreten: 31. August 04
  • Reputation: 1

geschrieben 15. September 2006 - 12:15

Sollten sonst alle Quelltexte einfach übertragbar sein oder? Ansonsten hoff ich net der einzige mit Linux in den Vorlesungen zu sein :wink:
"Wir können Regierungen nicht trauen, wir müssen sie kontrollieren"
(Marco Gercke)
0

#6 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 15. September 2006 - 12:24

Kommt drauf an, es gibt auch betriebssystemabhängige Libraries

"Und jetzt zeig ich euch, wie man eine DLL entwickelt" :wink:

Dieser Beitrag wurde von Witi bearbeitet: 15. September 2006 - 12:26

0

#7 Mitglied ist offline   floerido 

  • Gruppe: aktive Mitglieder
  • Beiträge: 721
  • Beigetreten: 19. September 05
  • Reputation: 0

geschrieben 21. September 2006 - 01:03

Wenn du Informatik studierst dann wird es sicherlich nicht sein das du der einzige mit Linux bist, wenn man bei uns die Display in der Vorlesung überfliegt, ist der Linux-Anteil fast höher und dann gibts noch ein paar Macs.
Hast du dich schon vorher etwas informiert über die Inhalte der ersten Vorlesungen? Plötzlich übst du C++ und es wird Java (wie bei uns) benutzt und C(x) wird dann erst später verwendet.

Dieser Beitrag wurde von floerido bearbeitet: 21. September 2006 - 01:04

0

#8 Mitglied ist offline   ShadowHunter 

  • Gruppe: aktive Mitglieder
  • Beiträge: 4.199
  • Beigetreten: 31. August 04
  • Reputation: 1

geschrieben 21. September 2006 - 01:41

1. Semester: C und C++ sowie Haskell (welches eher nur kurz erscheint)
2. Semester: Java

im 3. werd ich dann schon wählen können z.b Datenbanken zu nehmen ausm Hauptstudium!
"Wir können Regierungen nicht trauen, wir müssen sie kontrollieren"
(Marco Gercke)
0

#9 Mitglied ist offline   2cool 

geschrieben 21. September 2006 - 17:46

Beitrag anzeigenZitat (floerido: 21.09.2006, 02:03)

wenn man bei uns die Display in der Vorlesung überfliegt, ist der Linux-Anteil fast höher und dann gibts noch ein paar Macs.


Jo, das ist bei uns (FH) auch so.


Beitrag anzeigenZitat (floerido: 21.09.2006, 02:03)

Hast du dich schon vorher etwas informiert über die Inhalte der ersten Vorlesungen? Plötzlich übst du C++ und es wird Java (wie bei uns) benutzt und C(x) wird dann erst später verwendet.



Das ist mir auch passiert, ich war auf fast alles vorbereitet, nur nicht auf ST (Smalltalk). :rofl:
greetz, 2cool

web: cmd-script
mail: [email protected]
0

#10 Mitglied ist offline   ThunderKiller 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.697
  • Beigetreten: 31. August 06
  • Reputation: 0
  • Wohnort:Deutschland

geschrieben 29. September 2006 - 16:55

geht das nich einfach indem man

#include <stdio.h> läd und dann

printf("TEXT");

benutzt?
müsste doch eigendlich auch unter linux so sein oder?
Eingefügtes Bild
0

#11 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.533
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 29. September 2006 - 19:00

Ja, man kann natürlich auch C++ im C-Stil programmieren, genauso wie C im FORTRAN-Stil oder Perl im BASIC-Stil.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0