Int main() và void main() trong C++?

Anh chị cho em hỏi sử khác nhau giữa hai hàm đó , và khi nào ta nên sử dụng cái này, khi nào ta nên sử dụng cái kia ?

2 Likes

int Ten_Ham( ...) trả về giá trị nào đó thuộc kiểu int.
void Ten_Ham(...) thực hiện lệnh trong đó mà không trả về giá trị nào.
Việc sử dụng với hàm main() thì thường sử dụng là int main() sau đó kết thúc hàm thì return 0 để báo biết là hàm main đã hết và không có lỗi.

4 Likes

Cái câu lệnh return này nó không báo cho ai khác ngoài lập trình viên.
Người ta thường dùng số 0 để hiểu rằng 1 chương trình kết thúc bình thường (không có lỗi phát sinh)

int main(int argc, char **argv)	{

	for (int i = 0; i < 10; i++)	{
		if (i == 5)	{
			return -1; //we got a problem here
		}
	}

	return 0; //Program normally executed
}

5 Likes

Cảm ơn anh :sunny:
Đã nhắc nhở. Em đã sửa sai lại rồi ạ :smile:

1 Like

int main ()
dùng trong hàm main khi bạn sử dụng các IDE khác không phải VS của MS như newbie IDE hay Code::Block …
void main ()
dùng trong hàm main khi bạn sử dụng IDE VS của MS .

2 Likes

đó là do VS dễ dãi thôi bạn, thực chất void main quá cũ rồi và ít người xài, nếu theo chuẩn thì vẫn là int main nha bạn

2 Likes

Mình cũng k biết đc !
Tại thấy mấy bạn code mà dùng VS toàn dùng void main () mà không dùng int main () làm mình tưởng cái đó chỉ dùng cho VS của MS :slight_smile:
Mình cũng chưa dùng VS của MS để code bao giờ .Trc giờ toàn dùng các Cloud IDE để code thì để void main () nó sẽ báo lỗi và k run !

2 Likes

int main() vs void main() chủ yếu chỉ là kiểu trả về thôi bạn, int -> số, void -> …(chờ *éo gì nữa ?) :joy:, nhưng sự khác nhau trong sử dụng là chủ yếu để check lỗi, vd default thì exit code (returned) 0 nếu app run bình thường không thì sẽ là các trị khác
void main() thì bất lợi do là chẳng trả về gì cả
bây h chủ yếu là int main() nhé bạn, chỉ có mấy app vs books cũ mới void thôi

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?