Forum: Mikrocontroller und Digitale Elektronik c++ programm geht nicht


von hans (Gast)


Lesenswert?

Hi
ich muss sowas programmierne
das geht aber nicht wie kann man das anders lösen?

int messwerte;
cin>>messwerte;
double messwetekommplett[messwerte*12];

mfg

von scw (Gast)


Lesenswert?

Versuchs mal mit
double * messwertekomplett = new double[messwerte*12];
aber nicht vergessen, es am Ende wieder mit delete [] messwertekomplett 
zu löschen ;-)

von hans (Gast)


Lesenswert?

geht netr

von scw (Gast)


Lesenswert?

wenn du jetzt noch die Fehlermeldung postest wärs nicht schlecht ;-)
hast du auch folgendes drin:
#include <iostream>
using namespace std;
?

von schnudl (Gast)


Lesenswert?

in reinem C würde man schreiben
1
#include <malloc.h>
2
...
3
double * messwertekomplett;
4
...
5
messwertekomplett = (double *) malloc(12 * messwerte * sizeof(double));
6
...
7
free(messwertekomplett );

Bei c++ bin ich mir nicht sicher, ob man die Grösse von Arrays als 
Ausdruck angeben darf ...

von scw (Gast)


Lesenswert?

Hab mal meinen Ansatz durch den Compiler gejagt und bei mir hatte es 
funktioniert :-)
Und ja, man darf in c++ die Größe des Array als Ausdruck angeben.

von schnudl (Gast)


Lesenswert?

doch geht, so wie von scw gepostet.

von Stefan Salewski (Gast)


Lesenswert?

>Und ja, man darf in c++ die Größe des Array als Ausdruck angeben.

Als Ausdruck, der vom Compiler bei der Übersetzung des Programms 
berechnet wird (das ist eh klar), oder als Ausdruck, der erst zur 
Laufzeit berechnet werden kann?

von scw (Gast)


Lesenswert?

Auch als Audruck, der erst zur Laufzeit berechnet werden kann.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.