Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Trong chương 15 này chúng ta sẽ cùng tìm hiểu về hàm nâng cao thông qua các nội dung kiến thức như: Các tham số của hàm main, hàm có đối số mặc định, hàm trả về tham chiếu, hàm nội tuyến (inline). | Nội dung NMLT - Hàm nâng cao (phần 1) Các tham số của hàm main 1 Hàm có đối số mặc định 2 Hàm trả về tham chiếu 3 Hàm nội tuyến (inline) 4 Các đối số của chương trình Các đối số của chương trình Hàm main là hàm nên cũng có tham số. Chương trình tự động thực hiện hàm main mà không cần lời gọi hàm. Làm sao truyền đối số? Khi thực thi tập tin chương trình (.exe), ta truyền kèm đối số. Tất nhiên, hàm main cũng phải định nghĩa các tham số để có thể nhận các đối số này. NMLT - Hàm nâng cao (phần 1) Các tham số của hàm main Các tham số của hàm main Trong đó argc là số lượng đối số (tính luôn tên tập tin chương trình) argv là mảng chứa các đối số (dạng chuỗi) NMLT - Hàm nâng cao (phần 1) void main(int argc, char *argv[]) { } Các tham số của hàm main Ví dụ Viết chương trình có tên Cong, nhận 2 đối số x và y và xuất ra giá trị x + y. NMLT - Hàm nâng cao (phần 1) argv = {“Cong.EXE”, “2912”, “1706”}; argc = 3 Cong.EXE 2912 1706 Các tham số của hàm main Ví dụ Viết chương trình có tên Cong, nhận 2 đối số x và y và xuất ra giá trị x + y. NMLT - Hàm nâng cao (phần 1) #include #include // atoi void main(int argc, char *argv[]) { if (argc == 3) { int x = atoi(argv[1]); int y = atoi(argv[2]); printf(“%d + %d = %d”, x, y, x+y); } else printf(“Sai! VD: Cong 2912 1706”); } Các tham số của hàm main Ví dụ Viết chương trình có tên test nhận dữ liệu từ tập tin input.txt, xử lý và xuất kết quả ra tập tin output.txt. NMLT - Hàm nâng cao (phần 1) argv = {“test”, “input.txt”, “output.txt”}; argc = 3 test input.txt output.txt Các tham số của hàm main Ví dụ Viết chương trình có tên test nhận dữ liệu từ tập tin input.txt, xử lý và xuất kết quả ra tập tin output.txt. NMLT - Hàm nâng cao (phần 1) #include void main(int argc, char *argv[]) { if (argc == 3) { // Nhập dữ liệu từ tập tin argv[1] // Xử lý // Xuất kết quả ra tập tin argv[2] } else printf(“Sai! VD: test in.txt out.txt”); } Hàm có đối số mặc định Ví dụ Viết hàm Tong để tính tổng 4 | Nội dung NMLT - Hàm nâng cao (phần 1) Các tham số của hàm main 1 Hàm có đối số mặc định 2 Hàm trả về tham chiếu 3 Hàm nội tuyến (inline) 4 Các đối số của chương trình Các đối số của chương trình Hàm main là hàm nên cũng có tham số. Chương trình tự động thực hiện hàm main mà không cần lời gọi hàm. Làm sao truyền đối số? Khi thực thi tập tin chương trình (.exe), ta truyền kèm đối số. Tất nhiên, hàm main cũng phải định nghĩa các tham số để có thể nhận các đối số này. NMLT - Hàm nâng cao (phần 1) Các tham số của hàm main Các tham số của hàm main Trong đó argc là số lượng đối số (tính luôn tên tập tin chương trình) argv là mảng chứa các đối số (dạng chuỗi) NMLT - Hàm nâng cao (phần 1) void main(int argc, char *argv[]) { } Các tham số của hàm main Ví dụ Viết chương trình có tên Cong, nhận 2 đối số x và y và xuất ra giá trị x + y. NMLT - Hàm nâng cao (phần 1) argv = {“Cong.EXE”, “2912”, “1706”}; argc = 3 Cong.EXE 2912 1706 Các tham số của hàm main Ví dụ Viết chương trình có