Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

C--

Alter Hase

  • »C--« ist der Autor dieses Themas

Beiträge: 465

Beruf: Schüler

  • Private Nachricht senden

1

24.05.2010, 10:36

64bit Programmierung?

Ich habe jetzt seit kurzem Windows 7 64bit, nun habe ich ein paar Fragen bezüglich 64bit Programmierung:

Lohnt es sich überhaupt auf 64bit Programmierung umzusteigen?
Wie krieg ich VS dazu, 64bit zu compilen?
Welche Größe haben int, long usw. bei 64bit?
Kann ich auch 32bit Bibliotheken in 64bit Programme linken?

Vielen Dank im Voraus ;)

mfg C--
Ich spreche: C/C++, C++/CLI C#, VBA, VB.NET, Delphi, (HTML, Javascript(bisschen))
------------------------------------------------------------
Hier steht eventuell schon in ein paar Monaten der Link zu meiner Homepage!

return 0;
;)

BlazeX

Alter Hase

Beiträge: 478

Wohnort: DD

Beruf: Maschinenbau-Student

  • Private Nachricht senden

2

24.05.2010, 11:07

Ich hatte auch schon darüber nachgedacht, weil ich Vista x64 habe. Allerdings hab ich es dann sein lassen.

Lohnen wird es sich afaik durch der Performance. Beispiel: Crysis 32 lief bei mir langsamer als Crysis 64.
Dazu kannst du auch mit RAM > 4GB umgehen. Es kann aber sein, dass das mir 32 Bit auch geht. Bin ich jetzt überfragt.

VS kriegst du dazu, in dem du entweder als Student die Professional-Version per DreamSpark saugst, oder viel Geld für die Standard-Version ausgibts. Die Express so nicht. Link zu DreamSpark

int und long behalten afaik ihre Größe. Wie das bei Pointern aussieht weiß ich nicht. Könnten 48 Bit sein, laut AMD64.

Wenn du sie für 64Bit recompilest. Aber jede große Lib, die ihren Source nicht dazugibt, gibt 64 Bit Libs, Dlls und Exes mit.

unsigned long

Treue Seele

Beiträge: 140

Wohnort: Herzogenrath

Beruf: Fachinformatiker Fachrichtung Anwendungsentwicklung

  • Private Nachricht senden

3

24.05.2010, 11:08

Da gibt es mehrere riesige Artikel zu in der MSDN, die du lesen solltest.
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.'
[ bing | not'a'tric | germangamedev | Fragen richtig stellen ]

C--

Alter Hase

  • »C--« ist der Autor dieses Themas

Beiträge: 465

Beruf: Schüler

  • Private Nachricht senden

4

24.05.2010, 11:17

OK, Express version kann es nicht, also dann erst mal wohl nicht, aber doppelte bit-Zahl muss doch nicht zwangsläufig doppelte Performance bedeuten, oder? Denn wenn ich mit 32bit variablen rechne, dann bleiben doch 32bit Bandbreite ungenutzt und die Performance bleibt gleich?
Ich spreche: C/C++, C++/CLI C#, VBA, VB.NET, Delphi, (HTML, Javascript(bisschen))
------------------------------------------------------------
Hier steht eventuell schon in ein paar Monaten der Link zu meiner Homepage!

return 0;
;)

Beiträge: 774

Beruf: Student

  • Private Nachricht senden

5

24.05.2010, 11:43

Im Grunde genommen, hast du eignetlich überhaupt keine Vorteil. Es sei den du rechnest ständig mit 64bit Integern :rolleyes:
Prinzipiel kannst du dann über 4gb (3,6 oder so um genau zu sein) addressieren und auch verwenden.
Defakto brauchst du aber auch minmal mehr Speicher, weil alle deine Zeiger jetzt 64bit lang sind.

C--

Alter Hase

  • »C--« ist der Autor dieses Themas

Beiträge: 465

Beruf: Schüler

  • Private Nachricht senden

6

24.05.2010, 11:57

Also wirklich lohnen tut es sich nicht, wie es aus sieht, ich werde wohl auch kaum ein Programm schreiben, dass mehr als 3 GB RAM braucht ;)
Ich spreche: C/C++, C++/CLI C#, VBA, VB.NET, Delphi, (HTML, Javascript(bisschen))
------------------------------------------------------------
Hier steht eventuell schon in ein paar Monaten der Link zu meiner Homepage!

return 0;
;)

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

7

24.05.2010, 12:04

Abgesehen von der Theorie muss ich sagen, dass meine Anwendung ( syncsys.sf.net ) in der Praxis als 64 bit messbar schneller ist (der Vergleich findet 32 Release und 64 Release ohne irgendwelche Spezialeinstellungen, wie Zielmaschine etc statt). Dabei greift die nirgends auf 64 bit variablen zurück. Warum das so ist, weiß ich nicht. Allerdings handelt es sich dabei doch um eine sehr auf Leistung getrimmte Test-Anwendung. Im Normalfall braucht man keine 64 bit Anwendung. Einzige Ausnahmen sind bei mir eine Physikanwendung zum Berechnen von 10^8 Teilchen und eben syncsys bzw. das Spiel was darauf aufbaut.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

8

24.05.2010, 12:14

Warum sollte das mit VC Express nicht funktionieren?
Beim Einbinden der entsprechenden Header, sowie Anpassung der Projekt-Einstellungen (Linker -Erweitert -> Zielsystem) sollte das doch hinhauen?

Übrings steht zum Thema ein interessanter Artikel in der aktuellen c't.
fka tm

Beiträge: 774

Beruf: Student

  • Private Nachricht senden

9

24.05.2010, 12:20

Warum sollte das mit VC Express nicht funktionieren?

Hm joa ist halt so: Liste der Unterschiede in den Versionen

Werbeanzeige