Giá trị trả về
Bài học 4 trên 17 trong khóa học Hàm trong C của Coddy.
Một hàm (function) có thể trả về kết quả để dùng bên ngoài hàm. Để trả về kết quả, hãy dùng từ khóa return như sau:
return;
return expression;Dạng đầu tiên (return;) dùng cho các hàm không trả về giá trị nào (tức là chúng có kiểu trả về là void).
Dạng thứ hai (return expression;) dùng cho các hàm trả về một giá trị. expression là giá trị sẽ được trả về.
Hãy xem một ví dụ:
void sum(int a)
{
printf("%d + %d = %d \n", a, 2, a + 2);
}Hàm này không dùng return một cách tường minh, nhưng trình biên dịch tự động thêm từ khóa này vào cuối.
void plus(int a)
{
printf("%d + %d = %d \n", a, 2, a + 2);
return;
}Hàm cũng có thể trả về một giá trị cụ thể. Ví dụ:
int plus(int a, int b)
{
return a + b;
}Bây giờ, hàm plus trả về một int. Khi kiểu trả về của hàm không phải là <mark class="pen-red">void</mark>, hàm phải trả về một giá trị thuộc kiểu đó. Để trả về một giá trị, hãy dùng return và chỉ định giá trị cần trả về.
Nếu hàm trả về một giá trị, bạn có thể lưu kết quả vào một biến như sau:
int result = plus(3, 4);
Thử thách
DễViết một chương trình để in ra tích của hai số:
- Định nghĩa hàm (function) có tên
<strong>multiply</strong>, nhận hai tham số<strong>x</strong>và<strong>y</strong>có kiểu<strong>int</strong>, rồi trả về tích của<strong>x</strong>và<strong>y</strong>. - Trong hàm
main, định nghĩa biếnzđể lưu kết quả khi truyền hai số 9 và 10 vào hàmmultiply. - In giá trị của
zra màn hình.
Tự làm thử
#include <stdio.h>
// Định nghĩa hàm
int main(void)
{
// Định nghĩa biến z
// In ra giá trị của z
return 0;
}
Tất cả bài học trong Hàm trong C
Tự luyện tập: Trình biên dịch C online