2016-05-18 8 views
-8

Ich habe eine Frage, kann ich das tun? Speichern Sie Variablen in einem Array.Ist das möglich? Array in C

int var1 = 20; 
int var2 = 200; 
int var20 = 100; 

int array[3] = { var1, var2, var20 }; 

return 0; 
+2

Sie haben eine * Antwort *? Was? – EOF

+2

Eine Frage, denke ich? Versuch es. –

+0

Sie möchten vielleicht mehr über Zeiger erfahren. Nehmen Sie sich einige Tage Zeit, um ein gutes C-Programmierbuch zu lesen. –

Antwort

6

Es hängt davon ab, wo Sie den Code haben.

Wenn es als globale Variablen wie ist:

#include <stdio.h> 
int var1 = 20; 
int var2 = 200; 
int var20 = 100; 

int array[3] = { var1, var2, var20 }; 

int main(void) { 

    return 0; 
} 

es ist illegal, weil die initializer nicht konstant ist.

Wenn Sie es in einer Funktion wie gesagt:

#include <stdio.h> 

int main(void) { 
    int var1 = 20; 
    int var2 = 200; 
    int var20 = 100; 

    int array[3] = { var1, var2, var20 }; 

    return 0; 
} 

es ist gültige Code.

Wenn Sie möchten, können Sie das Array auch aus Argumenten erstellen, die an eine Funktion übergeben werden. Wie:

#include <stdio.h> 

void someFunc(int var1, int var2, int var3) 
{ 
    int array[3] = { var1, var2, var3 }; 
    for (int i=0; i < 3; ++i) 
    { 
     printf("%d\n", array[i]); 
    } 
} 

int main(void) { 
    int var1 = 20; 
    int var2 = 200; 
    int var20 = 100; 

    someFunc(var1, var2, var20); 

    return 0; return 0; 
}