Trang 1 / 2 12 LastLast
Hiển thị kết quả từ 1 đến 10 / 15
  1. #1
    Tham gia
    09-03-2007
    Bài viết
    16
    Like
    0
    Thanked 0 Times in 0 Posts

    [Hỏi]Khó hiểu thằng return 0?

    Em mới học C++ đến chương 4 của cuốn "tự học c++ trong 21 ngày", bài này có lẽ khá căn bản, em chưa hiểu sao lại thế, mọi người xem giúp.

    Code:
    //Chuong trinh minh hoa viec su dung cac bieu thuc quan he
    
    #include <iostream.h>
    
    int a;
    
    void main()
    {
     a = (5==5);    //gan 1 cho bien a
     cout << "\n a = (5==5) \n a = " << a << endl;
    
     a = (5!=5);    //gan 0 cho bien a
     cout << "\n a = (5!=5) \n a = " << a << endl;
    
     a = (12==12) + (5!=1);  //gan 1 + 1 cho a
     cout << "\n a = (12==12) + (5!=1) \n a = " << a << endl;
    
     //Neu cho them cai dong return 0; vao thi no bi loi o do, chua hieu
    }
    Đoạn này nếu em thêm cái return 0; ở gần cuối thì không hiểu sao lại bị báo lỗi.



    [=========> Bổ sung bài viết <=========]

    Code thì em toàn nhập nguyên xi trong sách vào rồi chạy thôi, em thấy nói chung là chạy được hết, mãi đến chương 4 thì có 2 code bị báo lỗi như vậy.

    Các bác giải thik giùm em với.
    Được sửa bởi trunghq lúc 08:36 ngày 06-08-2008 Reason: Bổ sung bài viết
    Quote Quote

  2. #2
    Tham gia
    25-02-2008
    Bài viết
    1,050
    Like
    0
    Thanked 3 Times in 3 Posts
    1. Thêm dòng return 0 chi vậy?
    2. Hàm này có giá trị trả về void, return 0 thì báo lỗi phải rồi.
    3. Sách sai là chuyện bình thường.

  3. #3
    Tham gia
    06-08-2005
    Bài viết
    829
    Like
    2
    Thanked 4 Times in 3 Posts
    Hàm void vẫn trả về giá trị được đó chứ bạn.
    Duy chỉ có hàm main() là không trả về giá trị thôi.
    Diễn đàn SEO Việt Nam

  4. #4
    Tham gia
    22-12-2007
    Location
    UIT
    Bài viết
    1,488
    Like
    0
    Thanked 1 Time in 1 Post
    @babyinternet: bạn có hiểu void là cái chi không mà nói nó trả về giá trị ?
    Còn cái vụ lập trình mà chỉ ghi là main() không thì ... đúng là hàng lởm chỉ Borland mới có . Cái thằng ... toàn phá chuẩn ISO

  5. #5
    Tham gia
    07-03-2008
    Location
    Đất thép
    Bài viết
    553
    Like
    0
    Thanked 3 Times in 2 Posts
    Nếu chúng ta muốn tạo ra một hàm chỉ để hiển thị một thông báo lên màn hình( nó không cần trả về một giá trị nào cả, hơn nữa cũng không cần nhận tham số nào hết)thì ta nghĩ ra kiểu dữ liệu void.

    @trunghq: Bạn thử nghĩ xem chương trình đó của bạn có cần trả về giá trị k?

  6. #6
    Tham gia
    24-12-2004
    Location
    Sài Gòn
    Bài viết
    197
    Like
    0
    Thanked 1 Time in 1 Post
    Quote Được gửi bởi trunghq View Post
    Em mới học C++ đến chương 4 của cuốn "tự học c++ trong 21 ngày", bài này có lẽ khá căn bản, em chưa hiểu sao lại thế, mọi người xem giúp.
    Bạn chữa void main() thành int main() thì sẽ return 0 được.

  7. #7
    Tham gia
    01-12-2004
    Bài viết
    151
    Like
    0
    Thanked 5 Times in 4 Posts
    Còn nếu muốn để void main() thì chữa thành return;

  8. #8
    Tham gia
    17-05-2006
    Bài viết
    127
    Like
    0
    Thanked 0 Times in 0 Posts
    return 0 tức là theo đặc tả trong C++ để chỉ một chương trình kết thúc không có lỗi gì

  9. #9
    Tham gia
    23-09-2007
    Bài viết
    15
    Like
    0
    Thanked 0 Times in 0 Posts
    ỦA? Sao mình lại nghe nói return 1 mới là ý chỉ chương trình kết thúc không có lỗi! Còn return 0, trong chương trình thì lại ám chỉ là fail mà?

  10. #10
    Tham gia
    17-05-2006
    Bài viết
    127
    Like
    0
    Thanked 0 Times in 0 Posts
    Quote Được gửi bởi lovely_giant_cat View Post
    ỦA? Sao mình lại nghe nói return 1 mới là ý chỉ chương trình kết thúc không có lỗi! Còn return 0, trong chương trình thì lại ám chỉ là fail mà?
    Đúng là như vậy, trong C/C++ quy định 0 là false, 1 là true thay cho True, False như của Pascal.
    Tuy nhiên return 0 là một chỉ thị trong trường hợp hàm có giá trị trả về là void. Còn nếu trả về là int, float ... thì 0 vẫn là giá trị trả về

Trang 1 / 2 12 LastLast

Bookmarks

Quy định

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