Probleme mit C++ auf 10.4

M

mexikaner

Mitglied
Thread Starter
Dabei seit
20.10.2006
Beiträge
61
Reaktionspunkte
1
Hi!

Wir arbeiten an der Uni gerade mit C++ und dafür hab ich auf meinem MacBook 10.4.11 Eclipse mit CDT installiert. Nun müssen wir auch kleine Programme entwickeln, für welche wir schon Vorgaben bekommen. Eine sieht so aus:

Code:
#include <stdio.h>
#include <malloc.h>
#include "vorgabe.h"

int main()
{
	float *f,x;
	unsigned l,i;
	scanf("%u",&l);
	f=(float*)(malloc((l+1)*sizeof(float)));
	for(i=0;i<=l;++i)scanf("%e",&f[i]);
	scanf("%e",&x);
	printf("%e\n",h(f,l,x));
}

Der erste Fehler beim Build, der kam war u.a. :
Code:
malloc.h: No such File or Directory

Dieser lies sich aber schnell beheben, indem man aus #include <malloc.h> einfach #include <malloc/malloc.h> machte. Dann kam jedoch der nächste Fehler:

Code:
'malloc' was not declared in this scope

Heißt dass, das in malloc.h gar keine Funktion names malloc vorhanden ist? Wenn ja - was kann man tun? Wenn nicht - was heißt es dann?

Danke für die Hilfe schonmal im voraus.
 
Heißt dass, das in malloc.h gar keine Funktion names malloc vorhanden ist?
Kurze Gegenfrage! Für was außer gar nichts braucht man in C++ malloc? Und wo steckt in dem von dir geposteten Code C++ drin?

Gruß,
/dev
 
Hi!

Hm. Ich hab den Code nicht geschrieben, den haben wir so bekommen und sollen dann halt noch die fehlende Funktion h selber entwickeln. Haben auch gerade jetzt erst mit C++ angefangen und deshalb kann ich dir leider nicht sagen, wozu man malloc braucht. Aber aus Jux und Dollerei wird uns sowas ja nicht gegeben - nehm ich mal an.

Edit:
Bin grad mal fix auf http://www.cplusplus.com/reference/clibrary/cstdlib/malloc.html gegangen, wo mir aufgefallen ist, dass da malloc benutzt, aber malloc.h nicht inkludiert wird. Also einfach mal stdlib.h mit reingenommen und nun läufts ohne Fehler.

Problem gelöst.
 
Zuletzt bearbeitet:
Haben auch gerade jetzt erst mit C++ angefangen
Nein, bis jetzt noch nicht. Bis jetzt war das C.

und deshalb kann ich dir leider nicht sagen, wozu man malloc braucht. Aber aus Jux und Dollerei wird uns sowas ja nicht gegeben - nehm ich mal an.
Lol, da hast du durchaus Grund, das anzunehmen, ja! :)
Nimm dir doch einen Tipp zu Herzen: Schmeiß Eclipse/CDT über Bord und installier dir die Apple Developer Tools, da ist der GCC (GNU compiler collection) grad dabei, und einen ordentlichen Texteditor (bei Leopard ist der vim IIRC schon dabei). Danach solltest du dich mal mit dem Terminal vertraut machen, und nützlichen "Programmen" wie 'man'. Gib doch mal auf der Konsole 'man malloc' ein (nach der Installation der Developer Tools)?

Gruß && HTH!,
/dev
 
Ist malloc() nicht in stdlib.h definiert? Probier mal, diese Datei statt malloc.h zu inkludieren.

Bah. edit nicht gesehen...
 
Zuletzt bearbeitet:
Zurück
Oben Unten