🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #33

Verwendung von altem C-Code in C++

#33
From: Ernoe Kovacs
Date: Thu, 27 Aug 1992 08:47
38 lines
1757 bytes
Hallo,

eine der Vorteile von C++ ist die Weiterverwendung von alten C-Code.
Dabei sind wir jetzt auf ein grosses Probelm gestossen. In vielen
alten C-Programmen werden in den Header-files keine Prototypes
fuer Funktionen angegebn. Die Deklaration sieht ungefaehr so aus:

extern int foo()

Die Definition im C-File sieht dann so aus:

int foo (a,b,c)
int a;
char b;
int c;

(Habe ich Deklaration und Definition jetzt richtigherum benutzt ?)

Nur leider fasst unser C++ Compiler die Deklaration foo() als
eine Funktion ohne Parameter auf und meldet dann Fehler ohne Ende.
(Natuerlich haben wir ein extern "C" { ...} um das include statement.

a) Viele C++ Buecher sagen, diese Inkompatibilitaet sei so gewollt.
   Sie bieten auch irgendwelche Loesungen mit Hilfe des Preprocessors
   (#ifdef _cpluplus ...) an. Eine solche Loesung waere extrem unguenstig,
   da wir eine dreistellige Zahl von unterschiedlichen header-Files haben.

b) Gibt es vielleicht ein Tool, mit dem man die Header-Files anpassen kann?
   (Geringe Hoffnung...)

c) Warum wird das den gemacht... Auch ANSI-C schreibt Protoypen aus
   Kompatibilitaetsgruenden nicht vor.

d) Gibt es C++ Compiler, die die alten Deklarationen anstandslos
   verkraften?

Gruss
- Ernoe
Technical Details
Message-ID: <KOVACS.92Aug27094714@orgel.informatik.uni-stuttgart.de>
Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!news.belwue.de!news.uni-stuttgart.de!ifi!kovacs

Show Full Headers
Complete Article Headers
Newsgroups: de.comp.lang.c++
Path: arc1-ca.pugleaf.net!sparky!uunet!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!news.belwue.de!news.uni-stuttgart.de!ifi!kovacs
From: kovacs@informatik.uni-stuttgart.de (Ernoe Kovacs)
Subject: Verwendung von altem C-Code in C++
Message-ID: <KOVACS.92Aug27094714@orgel.informatik.uni-stuttgart.de>
Sender: news@informatik.uni-stuttgart.de
Organization: IPVR, Uni Stuttgart, Germany
Distribution: de
Date: Thu, 27 Aug 1992 08:47:14 GMT
Lines: 38