Heim > Artikel > Backend-Entwicklung > Was ist die Verwendung von Return in der C-Sprache?
„return“ wird verwendet, um das Ergebnis zurückzugeben, das durch die Ausführung des Codes im Funktionskörper nach dem Aufruf der Funktion erhalten wird. Die allgemeine Form einer „Return“-Anweisung lautet: „Return Expression“; es kann mehrere „Return“-Anweisungen geben, aber bei jedem Aufruf einer Funktion kann nur eine „Return“-Anweisung ausgeführt werden, das heißt, es gibt nur eine Rückgabewert.
Der Rückgabewert einer Funktion bezieht sich auf das Ergebnis, das durch die Ausführung des Codes im Funktionskörper nach dem Aufruf der Funktion erhalten wird durch die return-Anweisung.
Die allgemeine Form der Return-Anweisung ist: return expression;
oder: return (expression);
Es ist richtig, ob ( ) vorhanden ist oder nicht. Der Einfachheit halber wird ( ) im Allgemeinen nicht geschrieben. Zum Beispiel:
return max; return a+b; return (100+200);
Erklärung des Rückgabewerts der C-Sprache:
1) Eine Funktion ohne Rückgabewert ist vom leeren Typ, dargestellt durch void. Zum Beispiel:
void func(){printf("http://c.biancheng.net\n");}
Sobald der Rückgabewerttyp einer Funktion als void definiert ist, kann sie ihren Wert nicht mehr erhalten.
Zum Beispiel ist die folgende Anweisung falsch: int a = func();
Um das Programm lesbar zu machen und Fehler zu reduzieren, sollte jede Funktion, die keinen Rückgabewert erfordert, definiert werden als Void-Typ.
2) Es kann mehrere Return-Anweisungen geben, die an einer beliebigen Stelle im Funktionskörper erscheinen können, aber bei jedem Aufruf einer Funktion kann nur eine Return-Anweisung ausgeführt werden, sodass es nur einen Rückgabewert gibt (ein paar Programmierschritte). Sprachen unterstützen mehrere Rückgabewerte, z. B. Go-Sprache). Zum Beispiel:
//返回两个整数中较大的一个 int max(int a, int b){ if(a > b){ return a; }else{ return b; } }
Wenn a>b wahr ist, wird return a ausgeführt, und return b wird nicht ausgeführt, wenn es nicht wahr ist, wird return b ausgeführt und return a wird ausgeführt nicht ausgeführt werden.
3) Sobald die Funktion auf die Return-Anweisung trifft, kehrt sie sofort zurück und alle nachfolgenden Anweisungen werden nicht ausgeführt. Aus dieser Perspektive hat die Return-Anweisung auch die Funktion, die Funktionsausführung zwangsweise zu beenden. Zum Beispiel:
//返回两个整数中较大的一个 int max(int a, int b){ return (a>b) ? a : b; printf("Function is performed\n"); }
Nachfolgend definieren wir eine Funktion zum Ermitteln von Primzahlen. Dieses Beispiel ist praktischer:
#include <stdio.h> int prime(int n){ int is_prime = 1, i; //n一旦小于0就不符合条件,就没必要执行后面的代码了,所以提前结束函数 if(n < 0){ return -1; } for(i=2; i<n; i++){ if(n % i == 0){ is_prime = 0; break; } } return is_prime; } int main(){ int num, is_prime; scanf("%d", &num); is_prime = prime(num); if(is_prime < 0){ printf("%d is a illegal number.\n", num); }else if(is_prime > 0){ printf("%d is a prime number.\n", num); }else{ printf("%d is not a prime number.\n", num); } return 0; }
prime() ist eine Funktion zum Ermitteln von Primzahlen . Eine Primzahl ist eine natürliche Zahl und ihr Wert ist größer oder gleich Null. Sobald der an prime() übergebene Wert kleiner als Null ist, ist er bedeutungslos und es kann nicht beurteilt werden, ob es sich um eine Primzahl handelt. Sobald festgestellt wird, dass der Wert des Parameters n kleiner als 0 ist, verwenden Sie die Return-Anweisung, um die Funktion vorzeitig zu beenden. Die
return-Anweisung ist die einzige Möglichkeit, eine Funktion vorzeitig zu beenden. Auf „Return“ kann ein Datenelement folgen, das angibt, dass die Daten außerhalb der Funktion zurückgegeben werden. Auf „Return“ können auch keine Daten folgen, was darauf hinweist, dass nichts zurückgegeben wird und nur zum Beenden der Funktion verwendet wird.
Ändern Sie den obigen Code so, dass auf return keine Daten folgen: #include ade979de5fc0e1ca0540f360a64c230b
void prime(int n){ int is_prime = 1, i; if(n < 0){ printf("%d is a illegal number.\n", n); return; //return后面不带任何数据 } for(i=2; i<n; i++){ if(n % i == 0){ is_prime = 0; break; } } if(is_prime > 0){ printf("%d is a prime number.\n", n); }else{ printf("%d is not a prime number.\n", n); } } int main(){ int num; scanf("%d", &num); prime(num); return 0; }
Der Rückgabewert von prime() ist void und return kann nicht befolgt werden. Schreiben Sie für alle Daten einfach direkt ein Semikolon.
Empfohlenes Tutorial: „C-Sprache“
Das obige ist der detaillierte Inhalt vonWas ist die Verwendung von Return in der C-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!