Forum: Mikrocontroller und Digitale Elektronik Keil C51 - c99 aktivieren


von avr (Gast)


Lesenswert?

Hi

Ich habe hier einen Silabs µC, die IDE von Silabs und den Keil C51 
Compiler. Leider meckert der Compiler wenn man nicht alle Variablen am 
Anfang der Funktionen deklariert (c89). Im den Compilereinstellungen der 
IDE gibt es keinen Schalter dafür.
Gibt es eine Direktive mit der man das umstellen kann (wie z.B. stdc99 
beim gcc)?

von Random .. (thorstendb) Benutzerseite


Lesenswert?


von Matthias (Gast)


Lesenswert?

Ganz genau genommen kannst du Variablen in C90 immer am Anfang eines 
Scopes definieren {}. Allerdings gilt diese dann auch nur innerhalb des 
Selbigen.
1
void func (void) {
2
int a;
3
4
  {
5
  int b;
6
    if (a == b) 
7
    {
8
      int c;
9
      c = a + b;
10
    }
11
12
  }
13
14
}

von avr (Gast)


Lesenswert?

Schade, dann geht das wohl nicht so einfach. Ich könnte auch in c89 
schreiben, wenn auch ungern. Aber eigentlich wollte ich Code 
wiederverwenden der in c99 geschrieben ist. Einen anderen c99 
unterstützenden 8051 Compiler scheint es irgendwie auch nicht zu geben.

von Steffen H. (mc_sho) Benutzerseite


Lesenswert?

> Einen anderen c99
> unterstützenden 8051 Compiler scheint es irgendwie auch nicht zu geben.

doch

http://www.iar.com/Products/IAR-Embedded-Workbench/8051/Product-news/

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.