CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C+
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
CHƯƠNG 2:NHỮNG MỞ RỘNG CỦA C+CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++Giới thiệu những điểm khác biệt chủ yếu giữa C và C++Các điểm mới của C++ so với CCHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C1.1 Định nghĩa hàmTrong định nghĩa hàm ANSI C cho phép hai kiểu khai báo dòng tiêu đề của hàm, trong khi đó C++ chỉ chấp nhận một cách /* C++ không khai báo kiểu này */ /* Cả C và C++ cho phép*/ double ham(a,b) double ham(int a, double b) int a; int a; double b ; double b;CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C1.2 Khai báo hàm nguyên mẫu Tronc C chỉ cần khai báo tên hàm và giá trị trả về, không cần danh sách kiểu - của các tham số C++ khai báo hàm nguyên mẫu - Với C++ một lời gọi hàm chỉ được chấp nhận khi trình biên dịch biết được kiểu của các tham số, kiểu của giá trị trả vềCHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C1.2 Khai báo hàm nguyên mẫuChuyển kiểu tự động theo nguyên tắc sau: char -> int ->longint -> float ->doubleVí dụ:double ham(int , double) /* khai báo hàm ham*/….main(){int n;char c;double x, x1, x2,x3;x1=ham(n,x); /* không có chuyển đổi kiểu*/x2=ham(c,x); /* có chuyển đổi kiểu từ char->int*/x3=ham(x,n); /* có chuyển đổi kiểu từ double ->int và từ int thành double */….CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++1. CÁC ĐIỂM KHÔNG TƯƠNG THÍCH GIỮA C++ VÀ ANSI C1.3 Sự tương thích giữa con trỏ void và các con trỏ khácTrong ANSI C, kiểu void tương thích với các kiểu con trỏ khác cả hai chiềuVí dụ:void *g;int *i;Phép gán sau là hợp lệg=i ;i=g ;Trong C++ chỉ có chuyển đổi kiểu ngầm định từ một kiểu con trỏ tùy ý thành void*, còn ngược lại phải thực hiện chuyển đổi kiểu tường minh.Ví dụ:g=i;i=(int*)g;CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++Trong tệp tiêu đề isotream.h người ta định nghĩa hai đối tượng cout và cin tương ứng với hai thiết bị chuẩn ra vào được sử dụng cùng với >. Thường thì ta hiểu cout là màn hình còn cin là bàn phím2.1 Ghi dữ liệu ra thiết bị chuẩn coutVí dụ 1 :#include main(){ cout CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++2.1 Ghi dữ liệu ra thiết bị chuẩn coutSử dụng cout và CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++2.1 Các khả năng viết ra trên coutCó thể sử dụng toán tử (void*)CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++2.1 Các khả năng viết ra trên coutVí dụ: cout CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++2.2 Đọc dữ liệu từ thiết bị chuẩn cinVí dụ 1:int n;cin>>n;Ví dụ 2:int n ;float p ;char c ;cin>>c>>n>>p ;Dùng toán từ >> để nhập dữ liệu cho các kiểu char, int, float, double và char*CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++2.2 Đọc dữ liệu từ thiết bị chuẩn cinGiống với hàm scanf(), cin tuân theo một số qui ước dùng trong việc phân tích các ký tự Các giá trị số được phân cách bởi : SPACE, TAB, CR, LF. Khi gặp một ký tự không hợp lệ như dấu “.” đối với số nguyên, chữ cái đối với số, ... sẽ kết thúc việc đọc cin, ký tự không hợp lệ này sẽ được xem xét trong lần đọc sau Đối với gía trị xâu ký tự, dấu phân cách cũng là SPACE, TAB, CR còn đối với gía trị ký tự, dấu phân cách là dấu CR. Trong hai trường hợp này không có khái niệm “ký tự không hợp lệ”. Mã sinh ra do nhấn phím Enter của lần nhập trước vẫn được xét trong lần nhập chuỗi hay ký tự tiếp theo và do đó sẽ có nguy cơ không nhập được đúng giá trị mong muốn khi đưa ra lệnh nhập xâu lý tự hoặc ký tự ngay sau các lệnh nhập cá giá trị khác. Giải pháp khắc phục ta dùng một trong hai lệnh saufflush(stdin) ; // khai báo trong stdio.hcin.clear(); // hàm thành phần của lớp cinCHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++2. CÁC KHẢ NĂNG RA VÀO MỚI CỦA C++2.2 Đọc dữ liệu từ thiết bị chuẩn cinVí dụ :#includevoid main(){int n;float x;char t[81] ; do { cout >n>>t>>x ; cout CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++3. NHỮNG TIỆN ÍCH CHO NGƯỜI LẬP TRÌNH3.1 Ghi chú thích cuối dòngC++ dùng // để chỉ ra một dòng là chú thíchVí dụcout CHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++3. NHỮNG TIỆN ÍCH CHO NGƯỜI LẬP TRÌNH3.1 Toán tử phạm vi ::Ví dụ 1: Ví dụ 2:int a=5 ; #includemain() int a ;{ main() int a=10 ; { int a=10; // a cục bộ coutCHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++4. HÀM INLINETrong C++ ta có thể định nghĩa các hàm được thay thế trực tiếp thành mã lệnh máytại chổ gọi (inline) mỗi lần được tham chiếu. Ưu điểm của hàm inline là chúng khôngđòi hỏi các thủ tục bổ sung khi gọi hàm và trả về giá trị. Do vậy, hàm inline đượcthực hiện nhanh hơn so với các hàm thông thườngCHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++4. HÀM INLINE Ví Ví dụ : getch(); #include } // định nghĩa hàm inline #include inline inline long tong(int a[]); // khai báo inline long tong(int a[]) hàm hàm inline { void main() int i; { long s=0; int i; for (i=0;iCHƯƠNG 2: NHỮNG MỞ RỘNG CỦA C++5. THAM CHIẾUNgôn ngữ C++ giới thiệu một khái niệm mới là tham chiếu ”reference”. Một ...
Tìm kiếm theo từ khóa liên quan:
lập trình máy tính lập trình C++ ngôn ngữ C++ kỹ thuật lập trình giáo trình kỹ thuật ngôn ngữ lập trình thực hành kỹ thuật lập trình mở rộng của C++Tài liệu cùng danh mục:
-
Tìm hiểu về lỗi tràn bộ đệm (Buffer Overflow)
5 trang 364 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán trên C++
74 trang 344 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 7 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
16 trang 335 0 0 -
180 trang 274 0 0
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 253 0 0 -
173 trang 247 2 0
-
Bài giảng Phân tích thiết kế và giải thuật - Chương 2: Kỹ thuật thiết kế giải thuật
80 trang 244 0 0 -
Kiến thức phần cứng máy tính - Sửa chữa nâng cấp và cài đặt máy tính xách tay Tập 2
483 trang 243 3 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 242 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 6 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
12 trang 240 0 0
Tài liệu mới:
-
Khảo sát tình trạng dinh dưỡng trước mổ ở người bệnh ung thư đại trực tràng
9 trang 21 0 0 -
94 trang 19 0 0
-
Tham vấn Thanh thiếu niên - ĐH Mở Bán công TP Hồ Chí Minh
276 trang 20 0 0 -
Kết hợp luân phiên sóng T và biến thiên nhịp tim trong tiên lượng bệnh nhân suy tim
10 trang 19 0 0 -
Đề thi giữa học kì 1 môn Ngữ văn lớp 9 năm 2024-2025 có đáp án - Trường THCS Nguyễn Trãi, Thanh Khê
14 trang 21 0 0 -
Đánh giá hiệu quả giải pháp phát triển thể chất cho sinh viên Trường Đại học Kiến trúc Hà Nội
8 trang 20 0 0 -
Tỉ lệ và các yếu tố liên quan đoạn chi dưới ở bệnh nhân đái tháo đường có loét chân
11 trang 20 0 0 -
39 trang 19 0 0
-
Đề thi học kì 1 môn Tiếng Anh lớp 6 năm 2024-2025 có đáp án - Trường TH&THCS Quang Trung, Hội An
6 trang 19 1 0 -
Tôm ram lá chanh vừa nhanh vừa dễRất dễ làm, nhanh gọn mà lại ngon. Nhà mình
7 trang 19 0 0