Heim > häufiges Problem > Können die Elemente in einem Array unterschiedliche Datentypen haben?

Können die Elemente in einem Array unterschiedliche Datentypen haben?

青灯夜游
Freigeben: 2023-01-13 00:31:11
Original
24719 Leute haben es durchsucht

Nein; der Datentyp jedes Elements im Array ist derselbe. Array ist eine häufig verwendete Datenstruktur, bei der es sich um eine Sammlung geordneter Daten handelt. Jedes Element im Array hat denselben Datentyp, und ein einheitlicher Array-Name und Index kann verwendet werden, um die Elemente im Array eindeutig zu identifizieren.

Können die Elemente in einem Array unterschiedliche Datentypen haben?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Version c99, Dell G3-Computer.

Nein; der Datentyp jedes Elements im Array ist derselbe.

Das Konzept und die Definition von Arrays

Wir wissen, dass zum Speichern von Daten zunächst Speicherplatz zugewiesen werden muss. Geben Sie 4 Ganzzahlen ein, Sie müssen 4 Speicherplätze vom Typ int zuweisen:

int a[4];
Nach dem Login kopieren

Auf diese Weise werden 4 Speicherplätze vom Typ int im Speicher zugewiesen, insgesamt 4×4=16 Bytes, und starten Sie sie. Habe einen Namen, genannt a.

Wir nennen einen solchen Datensatz ein Array (Array), alle darin enthaltenen Daten werden als Array-Element (Element) bezeichnet und die Anzahl der enthaltenen Daten wird als Array-Länge (Length) bezeichnet, z. B. int a [4] ; definiert ein ganzzahliges Array der Länge 4 mit dem Namen a.

Jedes Element im Array hat eine Seriennummer, die bei 0 anstelle der bekannten 1 beginnt und als Index bezeichnet wird. Wenn Sie Array-Elemente verwenden, geben Sie einfach den Index in der Form an:

arrayName[index]
Nach dem Login kopieren

arrayName ist der Array-Name und Index ist der Index. Beispielsweise repräsentiert a[0] das 0. Element und a[3] das 3. Element.

Als nächstes fügen wir die 4 ganzen Zahlen in der ersten Zeile in das Array ein:

a[0]=20;
a[1]=345;
a[2]=700;
a[3]=22;
Nach dem Login kopieren

Die 0, 1, 2 und 3 hier sind die Array-Indizes, a[0], a[1], a[2], a [3] ist das Array-Element.

Während des Lernprozesses verwenden wir häufig Schleifenstrukturen, um Daten in Arrays einzufügen (dh den Array-Elementen einzeln Werte zuzuweisen) und verwenden dann Schleifenstrukturen zur Ausgabe (dh zum Lesen der Werte von). Nachfolgend zeigen wir, wie man zehn Zahlen von 1 bis 10 in ein Array einfügt:

#include <stdio.h>
int main(){
    int nums[10];
    int i;
   
    //将1~10放入数组中
    for(i=0; i<10; i++){
        nums[i] = (i+1);
    }
   
    //依次输出数组元素
    for(i=0; i<10; i++){
        printf("%d ", nums[i]);
    }
   
    return 0;
}
Nach dem Login kopieren

Laufendes Ergebnis:

1 2 3 4 5 6 7 8 9 10
Nach dem Login kopieren

Die Variable i ist sowohl der Array-Index als auch die Schleifenbedingung Als Schleifenbedingung gilt: Wenn das letzte Element erreicht ist, beenden Sie einfach den Zyklus. Der maximale Index der Array-Nummern beträgt 9, was bedeutet, dass er 10 nicht überschreiten kann. Daher legen wir fest, dass die Bedingung für die Schleife i<10 ist. Sobald i 10 erreicht, muss die Schleife enden.

Ändern Sie den obigen Code, damit der Benutzer 10 Zahlen eingeben und in das Array einfügen kann:

#include <stdio.h>
int main(){
    int nums[10];
    int i;
   
    //从控制台读取用户输入
    for(i=0; i<10; i++){
        scanf("%d", &nums[i]);  //注意取地址符 &,不要遗忘哦
    }
   
    //依次输出数组元素
    for(i=0; i<10; i++){
        printf("%d ", nums[i]);
    }
   
    return 0;
}
Nach dem Login kopieren

Ausführungsergebnisse:

22 18 928 5 4 82 30 10 666 888↙
22 18 928 5 4 82 30 10 666 888
Nach dem Login kopieren

In der 8. Codezeile benötigt scanf() beim Lesen von Daten eine Adresse (die Adresse lautet wird verwendet, um den Speicherort der Daten anzugeben), und nums[i] stellt ein bestimmtes Array-Element dar, daher müssen wir & voranstellen, um die Adresse zu erhalten.

Lassen Sie uns abschließend zusammenfassen, wie Arrays definiert sind:

dataType  arrayName[length];
Nach dem Login kopieren

dataType ist der Datentyp, arrayName ist der Array-Name und length ist die Array-Länge. Zum Beispiel:

float m[12];  //定义一个长度为 12 的浮点型数组
char ch[9];  //定义一个长度为 9 的字符型数组
Nach dem Login kopieren

Es ist zu beachten, dass:

1) Der Datentyp jedes Elements im Array muss derselbe sein, für int a[4]; muss jedes Element int sein.

2) Die Länge des Arrays ist vorzugsweise eine Ganzzahl oder ein konstanter Ausdruck, z. B. 10, 20*4 usw., damit es unter allen Compilern ausgeführt werden kann, wenn die Länge Variablen enthält, z. B. n, 4*m usw. Unter einigen Compilern wird ein Fehler gemeldet. Wir werden dies speziell im Abschnitt „Arrays mit variabler Länge in der C-Sprache: Verwenden von Variablen zur Angabe der Länge des Arrays“ besprechen.

3) Beim Zugriff auf Array-Elemente beträgt der Wertebereich 0 ≤ Index <. Wenn er zu groß oder zu klein ist, wird die Grenze überschritten, was zu einem Überlauf des Arrays führt Dies in „C-Spracharray außerhalb der Grenzen“ und Der Abschnitt „Überlauf“ konzentriert sich auf die Diskussion. Bitte achten Sie darauf.

Weitere Kenntnisse zum Thema Programmierung finden Sie unter: Einführung in die Programmierung! !

Das obige ist der detaillierte Inhalt vonKönnen die Elemente in einem Array unterschiedliche Datentypen haben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage