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ố 12 kết quả

Đề tài: [C] Hàm main dùng thế nào ?

  1. #1
    Ngày gia nhập
    10 2006
    Bài viết
    11

    Mặc định [C] Hàm main dùng thế nào ?

    Có khi thì thấy nó là: void main() có khi lại chỉ có main() thôi ???
    Vì mình mới đụng nên cũng chưa hiểu cái này lắm .

    Vậy khi nào ta dùng có void và khi nào thì ko cần có void ? ví dụ ???

    và ngoài void main() thì còn cái gì ..... main() nữa ko ??? và dùng trong trường hợp nào ???

    Thông cảm. vì là newbie nên mới hỏi thế này. Mong được tận tình chỉ giáo :(
    Đã được chỉnh sửa lần cuối bởi monghoado : 04-11-2006 lúc 01:29 AM.

  2. #2
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Theo ANSI C thì hàm main chỉ có một kiểu đó là kiểu int. Không có kiểu khác đâu.

    int main() {...}

    Ở C++ thì hàm main có các kiểu như hàm thông thường, nhưng cũng còn phụ thuộc vào compiler nữa.

    void main(); Kiểu này là kiểu hàm main() không có giá trị trả về
    main(); Đây là mặc định của một số C++ compiler cho hàm main(), đa số compiler mặc định như thế này là kiểu int (Tất nhiên có thể có một compiler nào đó làm ngược đi)

    Chúng ta dùng compiler của C++ để compiling cho C nên có thể sử dụng "void main()" cũng như "main()" được, đây là một lợi thế, nhưng cũng có nhiều người bỏ qua luôn kiến thức về ANSI C, nên rất dễ bị lỗi khi compiling ở các trình dịch khác nhau.

    Nếu muốn biết thêm về ANSI C, vui lòng đọc cuốn "The ANSI C".
    Nếu muốn biết thông tin về compiler của mình vui lòng đọc readme file và help kèm theo.

    Chúc may mắn.
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  3. #3
    No Avatar
    minhcat301 Khách

    Ban chia sẽ cuốn The AnSi C được ko
    Theo mình thấy thì hàm main mặc định cái gì cũng được
    void() thì ko có giá trị trả về
    int main() hay float main() , .... Mình xài Visual C++ 6.0

  4. #4
    Ngày gia nhập
    10 2006
    Bài viết
    11

    Trích dẫn Nguyên bản được gửi bởi Dreaminess
    void main(); Kiểu này là kiểu hàm main() không có giá trị trả về
    Trị trả về là sao hã bác ??? Em ko hiễu chỗ này lắm mặc dù hay thấy viết vậy !!! ???

    Và hơn nữa, í em muốn hỏi là ngoài void main() ra, còn cái ....main() nào nữa ko ??? Ý nghĩa của nó là gì và dùng trong trường hợp nào ?

    Thanks !!!

  5. #5
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    ví dụ :

    Void main() >>> cuối chương trình có : return ; >> chẳng trả về cái gì hết
    Int main(int agu[]) >>> argument có cũng được kô có chả sao tùy thuộc bạn muốn làm cái gì , ; cuối ch/tr return 0; >> trả về giá trị mặc định của memory

    Long main()
    float main()
    ....
    >> giá trị trả về là cái return đó ..

    Khi nào viết hàm thì sẽ hiểu ..

    Có 3 tương tác giữa main() và hàm được gọi .

    1 . Kô ảnh hưởng : void .. return;
    2. Một chiều từ hàm được gọi về main() ...ví dụ : pow(base, cap),abs(integer)
    3. Tương tác 2 chiều : kiểu con trỏ pointer .. gọi đi gọi lại ...

    Kiểu như thế...
    None!

  6. #6
    Ngày gia nhập
    10 2006
    Bài viết
    11

    Mặc định [C] Hàm main dùng thế nào ?

    Kiến thức C của em còn non kém hay sao mà em vẫn chưa hiểu í bác pete_87 nói lắm :(

    Còn cái trị trả về là thế nào ?? các b ác có thể ví dụ thêm đc ko ?? Em thực sự chưa hiểu cái cụm từ này nói gì, í nghĩa gì ... ví dụ đi các bác ơi ! :(
    Cộng Đồng C Việt dot COM

  7. #7
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    Thế này thì khó quá nhỉ ... Có khi bạn nên chat yahoo với mấy người giỏi giỏi ở đây để biết kĩ hơn . Mình cũng được nhưng kô biết nhiều ^o^
    None!

  8. #8
    Ngày gia nhập
    10 2006
    Nơi ở
    Hà Nội
    Bài viết
    146

    Mặc định re

    Quả thật bạn monghaodo quá non, có lẽ bạn mới chỉ đọc/học C được vài hôm.
    Mình thử nói thế này bạn có hiểu không nha:
    Hàm: là một tập các thao tác tính toán để cho ra một kết quả nào đó.
    Hàm nó cũng có kiểu giá trị giống như biến, hoặc không mang giá trị gì.
    ví dụ biến có kiểu int, float, long,bool,....
    thì hàm cũng có các kiểu như vậy, hoặc nó không mang giá trị .
    Khai báo biến là : int x, long y, float z...
    thì Khai báo hàm cũng vậy:
    int Songuyento(int x);
    float CanBacHai(float y);
    ...
    Có một điều khác là Hàm thì có tham biến, đó là long x, float y trên đó.
    Nghĩa là hàm thao tác trên tập các tham biến đầu vào nào đó để mới cho ra kết quả mà hàm cần trả về. Ta biết rằng mục đích của hàm Songuyento(x) là trả về một số nguyên tố, giá trị này được gọi là giá trị trả về của hàm. Và kiểu của giá trị đó là kiểu giá trị trả về của hàm.
    Có lúc hàm cũng thao tác trên tập các tham biến nhưng không trả về giá trị nào cả. Lúc đó ta gọi hàm không có giá trị trả về. Ví dụ các thao tác mở và đọc file.
    Nhưng hàm dạng này thì có từ khóa Void trước tên hàm trong khai báo hàm.
    Thường hàm Main của ta chỉ thực hiện thao tổng hợp, gắn kết và in ra kết quả chứ không có giá trị trả về cụ thể, nên khai báo là Void Main()
    Còn có dạng khác như bạn pete đã nói ở trên.

  9. #9
    Ngày gia nhập
    07 2006
    Bài viết
    121

    Vậy hàm int main() trả về một số kiểu int vậy cái gì giữ con số này và giữ để làm gì?

  10. #10
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Vậy hàm int main() trả về một số kiểu int vậy cái gì giữ con số này và giữ để làm gì?
    Cái này cũng dài đó, để vài bữa nữa dreaminess hoàn thành bài một số vấn đề về ngôn ngữ C thì có cả cái này. Bữa nay mệt quá, đi ngủ đã.

    Ah, Mà mấy anh có kinh nghiệm về lập trình C không thấy thảo luận gì cả, em viết sai khối chỗ(sai lớn đó), cũng không thấy có ý kiến gì . Không biết có cười em không nữa. Phải nhiệt tình chút cho bọn em được nhờ chứ nhỉ?
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

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

  1. Kỹ thuật C Sự khác nhau giữa khai báo void main(), int main(void) và int main(int argv, char *argc[])?
    Gửi bởi v_huster38 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 21-11-2013, 12:10 PM
  2. Kỹ thuật C++ Cách trả dữ liệu về hàm main() khi dùng multithread?
    Gửi bởi reach_phan trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 0
    Bài viết cuối: 23-11-2011, 09:30 PM
  3. Dùng CreateRemoteThread tạo main thread cho 1 process, có thể không?
    Gửi bởi Cpro trong diễn đàn Windows API, Hooking, xử lý Windows Message
    Trả lời: 4
    Bài viết cuối: 02-04-2009, 03:44 PM
  4. Dùng CreateRemoteThread tạo main thread cho 1 process, có thể không?
    Gửi bởi Cpro trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 4
    Bài viết cuối: 02-04-2009, 03:44 PM
  5. Hàm DLL main dùng để làm gì
    Gửi bởi honey trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 12-03-2009, 10:25 PM

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