PDA

View Full Version : các bác ơi cho tôi hỏi tí?



kid_17vn
03-03-2005, 12:46
tôi mới học lập trình nên không hiểu lắm về mấy hàm như là void và return nó có tác dụng làm gì.
ai biết trả lời tôi với

imweasel
03-03-2005, 15:13
chính vì mới nên càng cần phải tự tìm hiểu mấy cái này :D nếu không sẽ không đi tiếp được đâu

thailehuy
04-03-2005, 08:17
void không phải là hàm -> nó là kiểu trả về
return là cái để trả cái kiểu trả về đó cho hàm

kid_17vn
04-03-2005, 16:37
chà thế thì khó thật tôi học đến lớp rồi mà phần này tôi thấy hơi khó hiểu,ai biết thì chỉ tôi với

bichduyen_nt
05-03-2005, 12:57
Cái này là cơ bản mà bạn, không biết làm sao bạn lập trình được hay vậy?, Duyên không biết là bạn không hiểu vấn đề này ở mức độ nào vì thấy bạn hỏi hơi kỳ lạ một chút, bạn đã biết về khai báo hàm chưa vậy, khi xây dựng một hàm thì thường có 2 kiểu, một là hàm không có giá trị trả về (được gọi là gì thì thuật ngữ đó Duyên quên rồi, thủ tục thì phải !!), khi đó bạn sẽ khai báo void trước tên hàm và một loại là hàm có giá trị trả về, khi đó bạn phải để kiểu dữ liệu của giá trị trả về trước tên hàm, và trong thân hàm đó thì trước khi kết thúc bạn phải có return để trả về giá trị hàm đó, nói vậy chắc bạn khó hiểu lắm, hi hi, một ví dụ cụ thể :
//hàm không có giá trị trả về
void Nhap_gia_tri (int &a, int &b)
{
***printf("Nhap gia tri a= ");scanf("%d",&a);
***//tương tự đối với b
}
//hàm có giá trị trả về
int Tìm_số_lớn_hơn (int a, int b)
{
***int kq;//biến chứa giá trị trả về của hàm này
***kq = a;
***if(a < b )
*****kq=b;
***return kq;
}
Hy vọng qua 2 ví dụ đơn giản trên thì bạn sẽ hiểu một cách đơn giản nhất về void và return, bạn nên tìm sách để tìm hiểu kỹ hơn !!! Rất nhiều điều thú vị với return đó !!!

windstorm
05-03-2005, 15:13
còn nếu như vậy thì sao áh ?
void Nhap_gia_tri (int &a, int &b)
{
***printf("Nhap gia tri a= ");
***return;
***scanf("%d",&a);
***//tương tự đối với b
}

coldsteel
06-03-2005, 17:26
Trong hàm void, khi nào muốn kết thúc hàm thì người ta có thể dùng "return;".

Do đó, hàm nhap_gia_tri của bạn sẽ in ra câu "nhap gia tri a=" rồi kết thúc, những dòng code ở dưới không đc chạy.

bichduyen_nt
06-03-2005, 19:38
Chính xác là như vậy, khi đó return sẽ có tác dụng như lênh break phải không ta?, hi hi.Còn nếu như trong hàm có giá trị trả về mà bạn xài return không thôi, không có một biến nào hết thì hình như là chương trình sẽ báo lỗi phải không nhi?, lâu quá quên mất !!!

whitepenguin
06-03-2005, 22:28
void thì khỏi return còn kiểu co số trả về thì return vậy thôi
int aaa()
{
return cái gì đó //nếu không nó sẽ warning chứ không có báo lỗi liếc giè hít
}

kid_17vn
08-03-2005, 16:25
tôi đã hiểu về mấy cái hàm void và return rồi mấy bạn ạ,cám ơn mấy bạn nhiều nhé
tôi định theo ngành lập trình game nên quyết định học C++ nhưng xem ra cũng khó ra phết đấy nhỉ,có lẽ cần phải cố gắng nhiều nữa mới được không biết mấy bạn đã trả lời định theo ngành gì nhỉ??