# Trung tâm xử lý sự cố > Hỏi-Đáp về Lập trình >  hỏi về lệnh return trong c++

## AnhKhoa

cho mình hỏi ý nghĩa của lệnh return trong c++ đó các bạn, thầy mình dạy mà không có nói tới, chỉ nói "tới đó rùi ...return" chứ không nói vì sao lại có return, mình tự mò nhưng cũng bó tay, mong các bạn nhiệt tình giúp đỡ

----------


## dunghoang

return là chỉ kết quả trả về của 1 hàm
vd:
int cong(int a, int b)
{
int s;
s = a+b;
return s;
}

nó sẽ trả về kết quả của s kiểu int

mình nói gì sai các cao thủ bỏ quả và chỉnh sửa. thanks

----------


## dongoclinh

nhưng còn chỗ này thì return có nghĩa là gì mình không hiểu
vd:


```
int lasonguyento(int k)
{
int d=0;
for(int i=1;i<=k;i++)
if(k%i==0)
d++;
if(d==2)
return 1;
return 0;
}
...
```

----------


## secutechvn

trong c khong dinh nghia ro rang kieu boolean nen khong dung kieu tra về như vậy được nêu bạn dùng hàm như vậy thì nên thay bool = int nếu không chương trình sẽ báo lỗi.
true=1; false =0;

----------


## nguyendangvan

cho phep minh noi len suy nghi cua minh nhe!!!!!!
lệnh return dùng để tra về cho hàm giá trị kèm theo cua nó.ví như khi return 1 thì ham đó có giá trị là 1. cụ thể hơn với ví dụ tính cộng của bạn "*wonchinh*" là khi bạn gọi lại hàm đó bằng phép gán: a=cong(a,b) thì khi xuất ra màn hình cho ta kết quả a=s(s là giá trị đã tính khi thay a. b bằng số cụ thể)
còn về thắt mắt trong hàm của bạn viết thì muốn hiểu lệnh return trước tiên bạn phải hiểu đoạn chương trình cua mình đã.ở đây mình chỉ giải thích đoạn có liên quan tới lenh return thoi nha.sau khi thực hiện vòng lặp for thì d sẽ có một giá tri nào đó. khi d=2 thì return 1 (số 1 nghĩa là đúng hay nói cách khác k là số nguyên tố) và khi return 0 (lúc d!=2 chương trình sẽ thực hiện lệnh này va số 0 nghĩa là sai hay k không là số nguyên tố).mà bạn ơi số 0 hay số 1, cái nào là số nguyên tố cái nào không là tùy ta định nghĩa thôi bạn ak, điều quan trọng là bạn nhớ kỹ để khi gọi hàm lại nó cho kết quả số nào thì ta còn biết ý nghĩa mà làm bài tiếp.
chúc bạn hoc tốt nhen!!!!!!!

----------


## seothamtraisan

ngoài ra 2 số 0 và 1 còn đại diện cho giá trị đúng và sai. 1 đại diện cho kết quả đúng và 0 đại diện cho kết quả sai

----------


## noithatductinh

-à mình bị nhầm chỗ bool!
-mình thấy khó hiểu cái lệnh return này quá! mình thấy nên là* return d* là ok (theo mình hiểu), còn tại sao phải có *if(d==2)*, biết rằng *return 1*, *return 0* ở đây là *đúng* và *sai*, nhưng nguyên lí hoạt động của nó như thế nào thì mình chưa hiểu lắm, bạn nào rành chỉ kĩ giúp mình với, đây là hàm nằm trong code đếm phần tử là số nguyên tố - code của thầy nên mình nghĩ chắc không sai đâu!

----------


## thaoya

*d==2*

bạn ơi d la số đếm ước số nguyên tố, ước số của nó ==2 thì mới là nguyên tố chứ. có nghĩa la nguyên tố chỉ có ước số là 1 và chính nó thôi

----------

