Navigation

2.6.1 Speicherklasse auto

Erfolgt die Vereinbarung einer Variablen in einem Block (Funktionsblock oder geschachtelter Block), so wird standardmäßig auto angenommen. Außerhalb von Funktionen ist es nicht möglich eine auto-Variable zu definieren. Die Lebensdauer ist auf den Block der Vereinbarung beschränkt. Bei jedem Eintritt in den Block ist der Wert der auto-Variable undefiniert.

VERBATIM/b261: 

void f(x, n) 
int x[], n;                  /* Beginn Funktionsblock */
{
    auto int i, y;    /* auto kann weggelassen werden */
    ...
    i = 0;          /* erst hier erhaelt i einen Wert */
    y = x[i];
    ...
    {                               /* Beginn Block 1 */
        auto int z;      /* Gueltigkeitsbereich von z 
        ...                            nur in Block 1 */
        z = x[i];
        ...
    }                                 /* Ende Block 1 */
    ...
}                              /* Ende Funktionsblock */

Navigation