Header, Prototypen
Im Verlauf dieses Kurses haben wir konsequent die Datei stdio.h verwendet. Diese Datei dient als Standard-Ein-/Ausgabe-Header. Sie enthält den Prototyp der Funktion printf(), die wir in jeder Lektion genutzt haben.
Main.c
12345678//#include <stdio.h> int main() { printf("Using `printf()` without `stdio.h`"); return 0; }
Wenn Sie die Datei stdio.h weglassen, funktioniert die Funktion printf() nicht mehr. Das Aufrufen dieser Funktion ohne den Header führt zu einem Fehler.
Verständnis von Header-Dateien
Header-Dateien wie stdio.h enthalten Deklarationen von Variablen, Arrays und Funktionsprototypen. Sie strukturieren den Projektcode und ermöglichen es, Komponenten nach Bedarf einzubinden. Dieser Ansatz vereinfacht die Projektorganisation.
Funktionsprototypen
Ein Funktionsprototyp ist im Wesentlichen eine Funktionsdeklaration ohne deren eigentliche Implementierung. Ein Prototyp dient dem Compiler als "Voranmeldung" und signalisiert das Vorhandensein einer Funktion.
function_type function_name(arguments);
Er ähnelt einer normalen Funktion, jedoch ohne Details. Beachten Sie das abschließende Semikolon (;). Wie wird nun ein Funktionsprototyp in einer eigenen Header-Datei behandelt?
Mehrdateien-Projekte
Bisher wurden Variablen und Funktionen in einer einzigen Datei zusammen mit der main-Funktion geschrieben. In der professionellen Entwicklung ist dies jedoch unüblich. Entwickeln wir eine Funktion, um die Lade-/Entladedauer eines Kondensators basierend auf dessen Kapazität und Widerstand abzuschätzen.
Das Projekt wird in drei Dateien unterteilt:
main.c– Diese Hauptdatei ist der Ort, an dem alle Funktionen aufgerufen werden;func.h– Hier wird die Funktionsdeklaration gespeichert;func.c– Die Implementierung unserer Funktion zur Berechnung der Lade-/Entladezeit eines Kondensators befindet sich hier.
main.c
function.h
function.c
12345678910#include "func.h" int main() { R = 10; C = 150; printf("Charge/discharge will be %.2f ms\n", chrg_dchrg(R,C)); return 0; }
Das %.2f gibt an, dass das Ergebnis mit zwei Dezimalstellen angezeigt werden soll.
Die Ausführung dieses Programms ergibt:
"Charge/discharge will be 7.50 ms"
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
What does the function to calculate capacitor charge/discharge time look like?
Can you explain how to include and use custom header files in a C project?
Why is it important to separate code into multiple files in C projects?
Awesome!
Completion rate improved to 2.63
Header, Prototypen
Swipe um das Menü anzuzeigen
Im Verlauf dieses Kurses haben wir konsequent die Datei stdio.h verwendet. Diese Datei dient als Standard-Ein-/Ausgabe-Header. Sie enthält den Prototyp der Funktion printf(), die wir in jeder Lektion genutzt haben.
Main.c
12345678//#include <stdio.h> int main() { printf("Using `printf()` without `stdio.h`"); return 0; }
Wenn Sie die Datei stdio.h weglassen, funktioniert die Funktion printf() nicht mehr. Das Aufrufen dieser Funktion ohne den Header führt zu einem Fehler.
Verständnis von Header-Dateien
Header-Dateien wie stdio.h enthalten Deklarationen von Variablen, Arrays und Funktionsprototypen. Sie strukturieren den Projektcode und ermöglichen es, Komponenten nach Bedarf einzubinden. Dieser Ansatz vereinfacht die Projektorganisation.
Funktionsprototypen
Ein Funktionsprototyp ist im Wesentlichen eine Funktionsdeklaration ohne deren eigentliche Implementierung. Ein Prototyp dient dem Compiler als "Voranmeldung" und signalisiert das Vorhandensein einer Funktion.
function_type function_name(arguments);
Er ähnelt einer normalen Funktion, jedoch ohne Details. Beachten Sie das abschließende Semikolon (;). Wie wird nun ein Funktionsprototyp in einer eigenen Header-Datei behandelt?
Mehrdateien-Projekte
Bisher wurden Variablen und Funktionen in einer einzigen Datei zusammen mit der main-Funktion geschrieben. In der professionellen Entwicklung ist dies jedoch unüblich. Entwickeln wir eine Funktion, um die Lade-/Entladedauer eines Kondensators basierend auf dessen Kapazität und Widerstand abzuschätzen.
Das Projekt wird in drei Dateien unterteilt:
main.c– Diese Hauptdatei ist der Ort, an dem alle Funktionen aufgerufen werden;func.h– Hier wird die Funktionsdeklaration gespeichert;func.c– Die Implementierung unserer Funktion zur Berechnung der Lade-/Entladezeit eines Kondensators befindet sich hier.
main.c
function.h
function.c
12345678910#include "func.h" int main() { R = 10; C = 150; printf("Charge/discharge will be %.2f ms\n", chrg_dchrg(R,C)); return 0; }
Das %.2f gibt an, dass das Ergebnis mit zwei Dezimalstellen angezeigt werden soll.
Die Ausführung dieses Programms ergibt:
"Charge/discharge will be 7.50 ms"
Danke für Ihr Feedback!