Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 16 kết quả

Đề tài: Lệnh return trong lập trình C++ hoạt động như thế nào?

  1. #1
    Ngày gia nhập
    04 2009
    Bài viết
    3

    Mặc định Lệnh return trong lập trình C++ hoạt động như thế nào?

    Mọi người có thể giải thích rõ hơn cho mình về hàm return được không.

  2. #2
    Ngày gia nhập
    10 2008
    Bài viết
    178

    trả về giá trị cho hàm
    vd
    PHP Code:
    int Get(int n)
    {
           
    3;
           return 
    n;

    giá trị trả về cho hàm này là 3

  3. #3
    Ngày gia nhập
    03 2009
    Bài viết
    80

    return hả bạn.
    ví dụ trong hàm con thế này:

    PHP Code:
    int vidu(int x)
    {
        
    x=10;
        
    x+=10;
         return 
    x;

    vậy là hàm này sẽ trả về giá trị là 20
    Trong hàm main() mình có thể dùng 1 biến để nhận giá trị này hoặc là xuất trực tiếp giá trị này. Nói chung là tùy nhu cầu.
    Đã được chỉnh sửa lần cuối bởi peterdrew : 15-04-2010 lúc 12:50 PM. Lý do: Cho code vào thẻ!

  4. #4
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    Mọi người có thể giải thích rõ hơn cho mình về hàm return được không.
    Chú ý ví dụ của rua_con, bạn thấy hàm là int Get() tức là hàm này sẽ trả về một giá trị nguyên khi dùng tới nó, vậy nó trả về ra sao? Khi này, return trong hàm sẽ đóng vài trò trả về giá trị thích hợp cho hàm đồng thời kết thúc hàm quay về hàm gọi nó (thường là hàm main())

  5. #5
    Ngày gia nhập
    04 2010
    Nơi ở
    tp hồ chí minh
    Bài viết
    1

    vậy thay return 0,hàm sẽ nhận giá trị 0 à

  6. #6
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Mặc định Lệnh return trong lập trình C++ hoạt động như thế nào?

    return 0 thì nơi gọi hàm sẽ nhận được giá trị 0
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  7. #7
    Ngày gia nhập
    09 2009
    Bài viết
    240

    Trích dẫn Nguyên bản được gửi bởi levanhuan Xem bài viết
    Mọi người có thể giải thích rõ hơn cho mình về hàm return được không.
    Câu lệnh return là lệnh kết thúc hoạt động của hàm và hàm nhận giá trị của biểu thức viết sau return.
    Ví dụ 1:
    C++ Code:
    1. int tong(int a, int b)
    2. {
    3.     return a + b;
    4.     printf("\nTong la: %d\n",a+b);
    5. }
    Thế thì câu lệnh printf() không được thực hiện.
    Ví dụ 2:
    C++ Code:
    1. int max(int a, int b)
    2. {
    3.     if (a > b) return a;
    4.     return b;
    5. }
    Khi max(m,n) được gọi, nếu m > n thì hàm kết thúc và nhận giá trị của m. Nếu m <= n thì hàm cũng kết thúc và nhận giá trị n. Không cần phải viết: if (a > b) return a; else return b;
    Ví dụ 3:
    C++ Code:
    1. int compare(int a, int b)
    2. {
    3.     if (a == b) {printf("\n %d = %d",a,b); return 1;}
    4.     else printf("\n %d != %d",a,b);
    5. }
    Khi biên dịch sẽ nhận được cảnh báo: warning C4715: 'compare' : not all control paths return a value.
    Ví dụ 4:
    C++ Code:
    1. void demo(int n)
    2. {
    3.     if (n <=0) return; // Kết thúc luôn.
    4.     // Các lệnh khác sẽ thực hiện khi n > 0
    5. }
    Lệnh return; sử dụng khi kiểu của hàm là void.
    Ví dụ 5:
    C++ Code:
    1. int stack::pop()
    2. {
    3.     return a[top--];
    4. }
    Tức là giá trị của a[top] được gán cho hàm, hàm sẽ kết thúc sau khi giảm top đi 1.

  8. #8
    Ngày gia nhập
    09 2010
    Bài viết
    15

    cho em hỏi rõ hơn về vi dụ 3: return 1 có tác dụng gì?
    khác so với ở ví dụ 1+2

  9. #9
    Ngày gia nhập
    10 2010
    Bài viết
    2

    theo mình thì return 1 cũng như khi mình dùng biến đếm vậy;
    khi khi return 1 thì giá trị của hàm sẽ tăng lên 1;
    ví dụ:
    if (n == k)
    return 1;
    else
    return 0;

  10. #10
    Ngày gia nhập
    08 2010
    Nơi ở
    Moscow, Russia Federation
    Bài viết
    913

    Trích dẫn Nguyên bản được gửi bởi tran tien quyet Xem bài viết
    theo mình thì return 1 cũng như khi mình dùng biến đếm vậy;
    khi khi return 1 thì giá trị của hàm sẽ tăng lên 1;
    ví dụ:
    if (n == k)
    return 1;
    else
    return 0;
    Thế nào gọi là giá trị của hàm tăng lên 1? Nếu không phải là return 1; mà là ruturn NULL, return "xyz", return this; ... thì giá trị hàm tăng lên bao nhiêu?
    return tức là trả về, khi hàm được định nghĩa có giá trị trả về thì nó sẽ trả về giá trị, nơi gọi hàm sẽ nhận giá trị này vào các mục đích khác nhau. return trong thân bất kì hàm nào sẽ kết thúc quá trình làm việc của hàm đó, các lệnh đứng sau return sẽ không còn có nghĩa nữa, kể cả trong hàm main cũng vậy! vì thế ví dụ trên có thể không cần cấu trúc if ... else mà có thể viết là:
    PHP Code:
    if(== k)
        return 
    1;
    return 
    0
    Mời các bạn ghé thăm blog cá nhân của tôi

Các đề tài tương tự

  1. Return giá trị trong StoreProcedure như thế nào?
    Gửi bởi MrViet trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 8
    Bài viết cuối: 02-01-2012, 08:42 PM
  2. thắc mắc về lệnh return trong hàm
    Gửi bởi mremty trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 28-11-2011, 01:05 AM
  3. thắc mắc về <<, >>, và lệnh return trong C++??
    Gửi bởi jackietl trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 5
    Bài viết cuối: 25-03-2011, 11:28 PM
  4. hiểu về ref và return trong lập trình C# như thế nào
    Gửi bởi bubu333 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 26-10-2010, 03:10 PM
  5. Khi nào cần return 0, return 1 trong int main()
    Gửi bởi jojocolumbus trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 22-06-2010, 10:23 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn