E2201 Zu viele globale Variablen in der Datei definiert (C++)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Compiler-Fehler und -Warnungen (C++) - Index

Mehr als 64 KByte globaler Variablen sind in einem Modul nicht erlaubt. Dies bezieht sich auf alle in der DGROUP gespeicherten Daten (alle globalen Variablen, literalen Strings und statische Lokale).

Lösungen

Prüfen Sie, ob sich Arrays verkleinern lassen. Entfernen Sie gegebenenfalls Variablen aus der DGROUP:

Gehen Sie dazu folgendermaßen vor:

  • Deklarieren Sie die Variablen als automatisch. Dadurch machen Sie Gebrauch vom Stack.
  • Reservieren Sie für die Variablen dynamischen Speicher aus dem Heap mithilfe der Funktionen calloc, malloc oder farmalloc. Dabei müssen Sie Zeiger verwenden.

Literale Strings werden auch in der DGROUP abgelegt. Besorgen Sie sich die Datei FARSTR.ZIP von unserem BBS, um literale Strings in ihrem eigenen Segment abzulegen.