집 >백엔드 개발 >C#.Net 튜토리얼 >C 언어에서 return의 사용법은 무엇입니까?
"return"은 함수 호출 후 함수 본문에 있는 코드를 실행하여 얻은 결과를 반환하는 데 사용됩니다. "return" 문의 일반적인 형식은 다음과 같습니다. "return 표현식;"; "return" 문은 여러 개 있을 수 있지만 함수가 호출될 때마다 "return" 문은 하나만 실행될 수 있습니다. 반환 값.
함수의 반환 값은 함수가 호출된 후 함수 본문에 있는 코드를 실행하여 얻은 결과를 의미하며 이 결과는 return 문을 통해 반환됩니다.
return 문의 일반적인 형식은 다음과 같습니다. return 표현식;
또는 return (expression);
단순화를 위해 ( )는 일반적으로 그렇지 않습니다. 쓴. 예:
return max; return a+b; return (100+200);
C 언어 반환값 설명:
1) 반환값이 없는 함수는 빈 타입으로 void로 표현됩니다. 예:
void func(){printf("http://c.biancheng.net\n");}
함수의 반환 값 유형이 void로 정의되면 더 이상 해당 값을 받을 수 없습니다.
예를 들어 다음 문은 잘못되었습니다. int a = func();
프로그램을 읽기 쉽게 만들고 오류를 줄이려면 반환 값이 필요하지 않은 모든 함수를 void 유형으로 정의해야 합니다.
2) return 문은 여러 개가 있을 수 있고 함수 본문 어디에나 나타날 수 있지만 함수가 호출될 때마다 return 문은 하나만 실행할 수 있으므로 반환 값은 하나만 있습니다(몇몇 프로그래밍 언어 지원) Go 언어와 같은 여러 반환 값). 예:
//返回两个整数中较大的一个 int max(int a, int b){ if(a > b){ return a; }else{ return b; } }
a>b가 true이면 return a가 실행되고, return b가 true가 아니면 return b가 실행되고 return a가 실행되지 않습니다.
3) 함수가 return 문을 만나면 즉시 반환하고 이후의 모든 문은 실행되지 않습니다. 이런 관점에서 보면 return 문에는 함수 실행을 강제로 종료하는 기능도 있습니다. 예:
//返回两个整数中较大的一个 int max(int a, int b){ return (a>b) ? a : b; printf("Function is performed\n"); }
아래에서는 소수를 결정하는 함수를 정의합니다. 이 예는 더 실용적입니다.
#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()은 소수를 찾는 데 사용되는 함수입니다. 소수는 자연수이며, 그 값은 0보다 크거나 같으며, prime()에 전달된 값이 0보다 작으면 의미가 없으며, 따라서 소수인지 판단할 수 없습니다. 매개변수 n의 값이 0보다 작은 것으로 감지되면 return 문을 사용하여 함수를 일찍 종료합니다.
return 문은 함수를 일찍 종료하는 유일한 방법입니다. Return 뒤에는 데이터 조각이 올 수 있으며, 이는 데이터가 함수 외부에서 반환됨을 나타냅니다. return 뒤에는 데이터가 없을 수도 있습니다. 이는 아무것도 반환되지 않고 함수를 종료하는 데만 사용됨을 나타냅니다.
return 뒤에 데이터가 오지 않도록 위 코드를 변경하세요: #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; }
prime() 반환 값은 void입니다. return 뒤에는 데이터가 올 수 없습니다. 세미콜론을 직접 작성하세요. .
추천 튜토리얼: "C Language"
위 내용은 C 언어에서 return의 사용법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!