0Pricing
C Academy · Lektion

Implizite Konvertierungen

Automatische Erweiterungen

Implizite Konvertierungen ist eine kostenlose C Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist eine Konvertierung

Wenn C Werte unterschiedlicher Typen miteinander kombiniert, konvertiert die Sprache automatisch einen Typ in den anderen. Das nennt man eine implizite Konvertierung.

#include <stdio.h>
int main(void) {
    int i = 5;
    double d = i;
    printf("d = %.1f\n", d);
    return 0;
}

Ganzzahl-Promotion

Kleine Ganzzahltypen wie char und short werden vor arithmetischen Operationen zu int hochgestuft.

#include <stdio.h>
int main(void) {
    char a = 10, b = 20;
    int sum = a + b;
    printf("sum = %d\n", sum);
    return 0;
}

Übliche arithmetische Konvertierungen

In einem gemischten Ausdruck wird der Operand mit dem kleineren Wertebereich in den größeren Typ konvertiert, damit beide vor der Operation übereinstimmen.

#include <stdio.h>
int main(void) {
    int i = 3;
    double d = 2.0;
    printf("%.1f\n", i + d);
    return 0;
}

int zu double

Ein int, der einem double zugewiesen wird, wird sicher erweitert und behält seinen exakten Wert.

#include <stdio.h>
int main(void) {
    int count = 7;
    double avg = count;
    printf("avg = %.1f\n", avg);
    return 0;
}

double zu int schneidet ab

Wenn Sie einen double einem int zuweisen, wird der Nachkommateil entfernt. Es findet keine Rundung statt.

#include <stdio.h>
int main(void) {
    double d = 9.99;
    int n = d;
    printf("n = %d\n", n);
    return 0;
}

char und int

Ein char enthält eine kleine Ganzzahl, nämlich seinen Zeichencode. Er wird automatisch in int konvertiert.

#include <stdio.h>
int main(void) {
    char c = 'A';
    int code = c;
    printf("code = %d\n", code);
    return 0;
}

Konvertierungen bei Zuweisungen

Die rechte Seite wird bei der Zuweisung in den Typ der linken Seite konvertiert.

#include <stdio.h>
int main(void) {
    double pi = 3;
    printf("pi = %.1f\n", pi);
    return 0;
}

Überraschung bei gemischter Division

5 / 2 ist eine Ganzzahldivision und ergibt 2. Machen Sie einen Operanden zu einem double, um eine echte Division zu erhalten.

#include <stdio.h>
int main(void) {
    printf("%.1f\n", 5 / 2.0);
    return 0;
}

Boolesche Konvertierungen

In Bedingungen wird jeder Wert ungleich null in true und null in false konvertiert.

#include <stdio.h>
int main(void) {
    int x = 3;
    if (x)
        printf("nonzero is true\n");
    return 0;
}

Konvertierung von Rückgabewerten

Ein zurückgegebener Wert wird in den Rückgabetyp der Funktion konvertiert. Wenn eine Funktion mit Rückgabetyp int einen double zurückgibt, wird dieser abgeschnitten.

#include <stdio.h>
int half(int n) {
    return n / 2;
}
int main(void) {
    printf("%d\n", half(7));
    return 0;
}

Argumente übergeben

Argumente werden in den Parametertyp konvertiert, wenn ein Prototyp im Gültigkeitsbereich vorhanden ist.

#include <stdio.h>
void show(double d) {
    printf("%.1f\n", d);
}
int main(void) {
    show(5);
    return 0;
}

Kurzer Test

Testen Sie Ihr Verständnis impliziter Konvertierungen.

Rückblick: Implizite Konvertierungen

Sie haben automatische Typkonvertierungen kennengelernt.

  • C konvertiert Operanden in einen gemeinsamen Typ
  • Kleine Ganzzahlen werden zu int hochgestuft
  • int wird sicher zu double erweitert
  • double wird zu int abgeschnitten
  • Ganzzahldivisionen führen zu Überraschungen, sofern kein Operand ein double ist

Häufig gestellte Fragen

Ist die Lektion „Implizite Konvertierungen“ kostenlos?

Ja — der vollständige Text von „Implizite Konvertierungen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Implizite Konvertierungen“?

Automatische Erweiterungen Du übst C Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um C Academy zu starten?

Keine Vorkenntnisse erforderlich. C Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Implizite Konvertierungen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser C Academy-Lektion Code schreiben und ausführen?

Ja. Jede C Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Implizite Konvertierungen
  2. Explizite Casts
  3. Integer- und Float-Konvertierungen
  4. Fallstricke bei Konvertierungen
← Zurück zu C Academy