Initialisierer muss konstant sein

Ich versuche, C zu lernen, aber ich bekomme einen Fehler im folgenden code.

Wenn ich radius in der Lautstärke bekomme ich eine Fehlermeldung: error #2069: Initializer must be constant.

#include <stdio.h>
#define PI (3.14)

/* Define radius*/
int radius = 10;
float volume = ( 4.0f / (3.0f * PI * radius) );

int main(void){

return 0;
}

Aber wenn ich den radius mit einer tatsächlichen Anzahl, es kompiliert einwandfrei.

#include <stdio.h>
#define PI (3.14)

/* Define radius*/
int radius = 10;
float volume = ( 4.0f / (3.0f * PI * 10) );

int main(void){

    return 0;
}

Warum passiert das und was kann ich tun, um die erste version arbeiten?

  • Da Initialisierer muss konstant sein
InformationsquelleAutor intelis | 2013-01-19
Schreibe einen Kommentar