Funktionen in C

Einführung

Von der Deklaration einer Variablen über das Drucken von etwas bis hin zur Entscheidungsfindung und Iterationen mit Schleifen haben wir bis jetzt viele grundlegende Konzepte der C-Sprache gelernt. Dieses und die nächsten Kapitel sind neu, beziehen sich aber auf unsere Grundlagen. In diesem Artikel lernen wir Funktionen in C kennen.

A Funktion in C ist ein Satz von Anweisungen/Anweisungen, die als Code mit einem bestimmten Namen gruppiert sind. Es kann bei Bedarf jederzeit und überall im Programm mit seinem Namen aufgerufen werden.

Ein Benutzer möchte beispielsweise die Aufzeichnungen der Kandidaten basierend auf ihrer Wahlberechtigung führen. Er wird also eine Funktion mit einem Code erstellen, der nach notwendigen Details wie dem Alter des Kandidaten usw. fragt und eine Ausgabe ausgibt. Wenn also ein Kandidat ankommt, muss nicht der gesamte Code erneut geschrieben werden, sondern rufen Sie einfach die Funktion auf und fahren Sie entsprechend fort.

Warum funktioniert in C?

Das obige Beispiel gibt eine relevante Antwort auf diese Frage. Funktionen entlasten Programmierer und sparen Zeit. Kurz gesagt, das Umschreiben desselben Codes kann durch die Verwendung von Funktionen vermieden werden.

Darüber hinaus machen Funktionen unseren Code übersichtlich und leicht lesbar.

Vorteile von Funktionen in C

  1. Teilt eine größere Aufgabe in kleinere Teilaufgaben auf und jede Teilaufgabe ist auch eine Funktion.
  2. Bessere Speicherauslastung.
  3. Leicht zu lesen und zu ändern.

Arten von Funktionen in C

Es gibt zwei Arten von Funktionen:

  1. Bibliotheksfunktionen
  2. Benutzerdefinierte Funktionen.

Bibliotheksfunktionen in C

Bibliotheksfunktionen sind t Funktionen, die in der C-Bibliothek vordefiniert sind und von den Programmierern bei Bedarf verwendet werden. 'printf()' und 'scanf()' sind vordefinierte Funktionen, die bereits in unseren Programmen verwendet wurden.

Darüber hinaus hat die Verwendung solcher Bibliotheksfunktionen viele Vorteile, da sie sehr gut funktionieren und einfach zu bedienen sind. Diese vordefinierten Funktionen sparen dem Benutzer Zeit. Alles auf dem Bildschirm drucken, die Ausgabe vom Benutzer übernehmen und vieles mehr sind bereits definiert. Dies ermöglicht den Programmierern ein effizientes Arbeiten.

Benutzerdefinierte Funktionen in C

Beim Schreiben eines Programms erstellen wir viele Funktionen nach unseren Bedürfnissen, damit unser Code gut läuft. Alle diese vom Benutzer definierten Funktionen sind benutzerdefinierte Funktionen.

Die benutzerdefinierte Funktion besteht hauptsächlich aus 3 Teilen:

  1. Funktionsdeklaration
  2. Funktionsdefinition
  3. Funktionsaufruf

Wie deklariere ich eine Funktion in C?

Eine Funktion wird wie folgt deklariert:

Syntax:

return_type Funktionsname (Parameter);

 

Beispiel:

Um die Fläche eines Rechtecks ​​mit zwei Dimensionen Länge und Breite zu berechnen. Die Funktion 'area' wird deklariert als

Schwimmerbereich (Schwimmlänge, Schwimmerbreite);

Hier die Funktion namens 'Bereich' wird erklärt, nimmt 'Länge'Und'Breite' vom Typ float als Eingabe und Rückgabe des Flächenwertes vom Typ 'schweben'.

Float-Durchschnitt (int a1, int a2);

Die Funktion namens 'durchschnittlich' wird deklariert, was den Durchschnittswert des Typs ' zurückgibt.schweben' nach Berechnung aus zwei Eingaben 'a1','a2'vom Typ'int'.

Funktionen in C . definieren

Syntax:

return_type Funktionsname (Parameter)

{

    //Code

}

Lassen Sie uns die oben deklarierte Funktion 'area' definieren.

Schwimmerbereich (Schwimmlänge, Schwimmerbreite)

{

     Schwimmer A;

     A = (Länge * Breite);

     Rückkehr A;

}

'A' ist eine Variable vom Typ 'float', die innerhalb der 'area'-Funktion deklariert ist. Sie ist nur innerhalb der Funktion gültig und nicht außerhalb. Solche Variablen heißen 'lokal Variablen'. Somit ist 'A' eine lokale Variable.

Hinweis: Die Angabe des Parametertyps zusammen mit den Parametern ist beim Definieren der Funktion erforderlich.

Der berechnete Wert von 'Länge*Breite' wird 'A' zugewiesen.

Rückkehr A; Diese Funktion gibt uns den Wert von 'A', welcher 'float' ist.

Aufruf einer Funktion in C

Bisher haben wir eine Funktion deklariert und entsprechend unserer Verwendung definiert. Die Funktion kann je nach Bedarf des Benutzers einmal oder mehrmals im Programm aufgerufen werden.

Wenn ein Aufruf erfolgt, wechselt das Steuerelement zu dieser Funktion und der in seiner Definition geschriebene Code wird ausgeführt. Danach geht die Steuerung an das Hauptprogramm über.

Syntax:

Funktionsname (Parameter);

Die Funktion 'area' kann aufgerufen werden als

Fläche (Länge, Breite);

Nun, da wir mit den Funktionen fertig sind, schreiben wir ein Programm zum Ermitteln der Fläche eines Rechtecks.

#enthalten Float-Bereich (Float-Länge, Float-Breite); // Deklaration int main () {float l, b; Schwimmer a; printf("Geben Sie den Längenwert ein:\n"); scanf("%f", &l); printf("Geben Sie den Breitenwert ein:\n"); scanf("%f", &b); a = Fläche (l, b); // Funktionsaufruf printf ("Fläche ist %f\n", a); 0 zurückgeben; } Float-Bereich (Float-Länge, Float-Breite) // Definition { Float A; A=(Länge*Breite); Rückgabe A; }

 

Ausgang:

Aufruf einer Funktion in C

Schwimmerbereich (Schwimmlänge, Schwimmerbreite); Die Funktion wird zuerst noch vor der 'main'-Funktion deklariert, damit die 'main'-Funktion, wenn sie während der Codeausführung auf die 'area'-Funktion trifft, wissen muss, dass eine Funktion namens 'area' existiert. Es wird nach der Funktionsdefinition gesucht.

Die Funktion namens 'area' deklariert mit 'float' Typ mit 2 Argumenten von 'float'. Das bedeutet, dass wir beim Aufrufen Parameter zwei 'float'-Eingaben übergeben müssen, und wir erhalten im Gegenzug eine 'float'-Ausgabe.

Kommen Sie nun zur 'Funktionsaufruf'-Anweisung in der 'main'-Funktion.

a = Fläche (l, b); Der Funktionsaufruf erfolgt durch Übergabe von zwei Parametern vom Typ 'float'. Da 'a' auch als Float-Typ deklariert wurde, wird '80.500000' in 'a' gespeichert.

Wenn der Compiler den Funktionsaufruf erreicht, sucht er nach der 'Funktionsdefinition', die in der obigen Funktion nach der 'main'-Funktion geschrieben wird.

'Funktionsdefinition' kann auch nach der Deklaration erfolgen.

#enthalten Float-Bereich (Float-Länge, Float-Breite) { Float A; A=(Länge*Breite); Rückgabe A; } int main() {float l,b; Schwimmer a; printf("Geben Sie den Längenwert ein:\n"); scanf("%f",&l); printf("Geben Sie den Breitenwert ein:\n"); scanf("%f",&b); a=Fläche(l,b); printf("Fläche ist %.3f\n",a); 0 zurückgeben; }

 

Ausgang:

Funktionsdefinition

Die Funktionsdefinition erfolgt mit ihrer Deklaration. In diesem Fall weiß der Compiler während der Ausführung von 'main', dass es eine Funktion namens 'area' gibt, weil sie oben definiert ist, von wo aus sie aufgerufen wird.

Ein weiteres Beispiel für eine Funktion ist unten angegeben:

#enthalten void show (int a) { printf("Zahl ist %d\n",a); } int main() { int x; printf("Geben Sie eine Zahl ein:\n"); scanf("%d",&x); zeigen(x); 0 zurückgeben; }

 

Ausgang:

Funktionsbeispiel in C

Leere anzeigen (int a), In dieser Anweisung hat die Funktion 'show' den Rückgabetyp 'void', was bedeutet, dass die Funktion 'show' nichts zurückgibt. Der Rest des Programms ist recht einfach. Das einzige Anliegen, das obige Programm zu schreiben, besteht darin, über die 'ungültig' Rückgabetyp.

Die Funktionsdefinition ist auch ohne Übergabe eines Arguments möglich. Sehen Sie sich ein Beispiel dafür an.

#enthalten void display () { printf("Funktion ohne Argument\n"); } int main() { display(); 0 zurückgeben; }

 

Ausgang:

Void-Funktion

Leeranzeige ( ), Diese Funktion hat leere '()' Klammern, was bedeutet, dass wir in der Funktion 'display( )' keine Argumente übergeben.

Punkte, die man sich merken sollte

  1. Die Funktion ist eine Operation/Perform Task, die, einmal definiert, viele Male verwendet/aufgerufen werden kann.
  2. Eine Funktion im Programm muss 'main( )' sein.
  3. Ein Programm kann eine beliebige Anzahl von Funktionen haben.
  4. Keine Funktion ist in einer anderen Funktion definiert.
  5. Jede Funktion hat ihren eindeutigen Namen.
  6. Die Ausführung jedes Programms beginnt mit der Funktion 'main( )'.
  7. Da 'main( )' keine benutzerdefinierte Funktion ist, führt das Betriebssystem den Funktionsaufruf für 'main( )' aus.

Hinterlassen Sie eine Nachricht

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.